uniapp开发饿了么微信小程序首页sticky粘性定位布局

        position:sticky是css新增的一个属性,意为粘性定位,主要是用在对 scroll 事件的监听上,在滑动过程中,某个元素距离其父元素的距离达到 sticky 的要求时(比如给下图中的红色盒子添加样式position:sticky; top:20px);那么该红色盒子向上滚动,距离父元素的距离达到20px时,会固定到适当的位置,效果是relative与fixed的完美结合。

gift.gif

        该新增属性的应用非常广泛,好东西大家都喜欢借鉴嘛~ 比如饿了么微信小程序端的首页布局中,对搜索框元素就采用了粘性布局,具体是怎么实现的呢?我们先来看一下整体效果(如下图 , 大家也可以打开饿了么微信小程序体验一把~)。

page.gif

        template代码:

                            鲜果大咖水果捞 20减12

登录后复制

    注意:这里给search-box盒子添加了动态属性top,这是因为在小程序端,搜索框在不同移动设备上具体父元素的距离是变化的。如何求动态的top属性值呢?

            export default {            data() {return {//在这里给到top属性一个默认的值为0    top: 0}     },     onLoad() {// 获取手机系统信息 状态栏高度 const statusBarHeight = uni.getSystemInfoSync().statusBarHeight// 获取胶囊的位置const menuButtonInfo = uni.getMenuButtonBoundingClientRect()    //导航栏的高度 = (胶囊底部高度 - 状态栏的高度) + (胶囊顶部高度 - 状态栏内的高度)     this.navBarHeight = (menuButtonInfo.bottom - info.statusBarHeight) +                         (menuButtonInfo.top - info.statusBarHeight)      //top的值为状态栏的高度+导航栏的高度this.top = menuButtonInfo.bottom + menuButtonInfo.top - statusBarHeight;    }         }                .search-box {        position: sticky;        z-index: 2;    

登录后复制

        

23.png

   

以上就是uniapp开发饿了么微信小程序首页sticky粘性定位布局的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3030697.html

(0)
上一篇 2025年3月13日 08:28:10
下一篇 2025年3月13日 08:28:16

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 新手怎样开发第一款微信小程序

    在安装完“微信Web开发者工具”之后,通过开发者的微信扫码进入后,如图。  点击“添加项目”,填入之前获得的AppID(无AppID可忽略),输入项目名称“Hello WXapplet”,选定本地文件夹作为项目目录。 勾选“在当前目录中创建…

    2025年2月19日 建站经验
    400
  • 微信小程序开发教程之增加mixin扩展

    这篇文章主要介绍了关于微信小程序开发教程之增加mixin扩展,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 Mixin是一种思想,用部分实现的接口来实现代码复用。可以用来解决多继承的问题,又可以用来扩展功能。下面这篇文章主要…

    2025年2月19日
    400
  • 关于微信小程序设置http请求的步骤

    这篇文章给大家介绍了微信小程序如何进行http请求的详细步骤,相信对大家学习微信小程序网络请求会有所帮助,有需要的朋友们下面来一起看看吧。 http请求介绍 HTTP(HyperText Transfer Protocol)是一套计算机通过…

    2025年2月19日
    400
  • 微信小程序开发一键登录 获取session_key和openid的实现

    这篇文章主要介绍了微信小程序开发一键登录 获取session_key和openid实例的相关资料,需要的朋友可以参考下 微信小程序开发一键登录 获取session_key和openid实例 思来想去不愿自己的微信小程序是个单机版本.自己又不…

    2025年2月19日 建站经验
    400
  • 关于微信小程序中欢迎页面的制作

    这篇文章主要介绍了微信小程序 欢迎页面的制作含(源码下载)的相关资料,这里实现欢迎页面,开始做应用的时候都会用到,需要的朋友可以参考下 微信小程序欢迎页面: 先看下最后的效果图:  首先打开开发工具,创建quick start项目,简单的修…

    2025年2月19日
    400
  • 微信小程序实现皮肤的夜间模式

    这篇文章主要给大家介绍了关于利用微信小程序实现皮肤功能,也就是实现夜间模式的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。 老规矩,先上效果图 个人对夜间模式这个功能情有独钟 晚上黑灯…

    2025年2月19日
    400
  • 使用TypeScript开发微信小程序的方法

    typescript是c#之父anders hejlsberg的又一力作,很多喜欢c#语法的朋友对typescript都爱不释手,今天给大家介绍下typescript开发微信小程序的方法,感兴趣的朋友一起看看吧 TypeScript简介: …

    2025年2月19日
    500
  • 微信小程序开发也不过如此,这篇文章教你快速完成

    一.写在前面 为什么要学小程序开发?     对于前端开发而言,微信小程序因为其简单快速、开发成本低、用户流量巨大等特点,也就成了前端开发工程师必会的一个技能。  开发准备: (1)有人开玩笑说,会vue小程序根本都不用学: 微信小程序虽然…

    2025年2月19日 建站经验
    400
  • 如何用WebStorm配置微信小程序开发(图文)

    微信小程序正式上线,很多地方在刷屏,我们可以看见很多人都在使用微信小程序,但是不少用户不会微信小程序怎么开发?下面带来微信小程序开发实战教程,手把手教你开发跑步微信小程序,一起来了解下吧。 不得不说,webstorm是一款很强大的编辑器,在…

    2025年2月19日
    400
  • 如何在微信小程序开发中使用 npm 中包的功能?

    本文介绍了如何在微信小程序开发中使用 npm 中包的功能,大大提高微信小程序的开发效率,同时也是微信小程序系列教程的视频版更新。 微信小程序在发布之初没有对 npm 的支持功能,这也是目前很多前端开发人员在熟悉了 npm 生态环境后,对微信…

    2025年2月19日 建站经验
    400

发表回复

登录后才能评论