微信小程序-粘性组件

再次完善:将区域设置为粘性时,会脱离原有文档,使得出现下方页面突然遮盖一部分,不平滑

解决:给出一个新的空白区域,宽高与粘性区域一致,wx:if 控制其显示

/****************/

后续补充:在真机上测试后发现过渡不是很平滑,甚至会出现显示错误,我想原因可能是出现在滚动监听距离的延时上,可以考虑其他方法

/****************/

实现原理:

粘性组件的本质是 position:fixed; top:100px

监听滚动条,当滚到到对应位置时修改样式

javascript 复制代码
if(event.scrollTop >= 500){
      // 粘性组件启动
      this.setData({
        isSticky: true
      })
    }else {
      this.setData({
        isSticky: false
      })
    }

布局:以一个view包裹需要粘住的内容

html 复制代码
<view class="{{isSticky ? 'fixed-css' : ''}}" style="width: 100%; top: {{isSticky ? navBarHeight : ''}}px;"></view>

由于navigation是自定义的,且导航栏高度是动态计算的,所以top写在内联样式中

样式:

css 复制代码
.fixed-css {
  position: fixed;
  background-color: rgb(242, 245, 250);
}

给一个背景色,实现遮挡效果

不足之处:监听滚动位置是固定值

相关推荐
matlabgoodboy7 小时前
软件开发定制小程序APP帮代做java代码代编写C语言设计python编程
java·c语言·小程序
無名路人12 小时前
uniApp 小程序 vue3 app.vue静默登录其他页面等待登录完成方式二
前端·微信小程序·ai编程
杰建云16716 小时前
商家怎么弄小程序店铺
小程序
打瞌睡的朱尤17 小时前
小程序101~125
小程序
Azhao110618 小时前
小程序购物车结算体验优化详解:从入门到实战全攻略
小程序
Haibakeji19 小时前
拼团小程序定制开发适合哪些行业
小程序·软件需求
2501_9159184120 小时前
iOS性能数据监控:从概念到工具实践,让应用运行更流畅
android·macos·ios·小程序·uni-app·cocoa·iphone
silvia_Anne21 小时前
微信小程序(组件通讯和全局数据共享)
微信小程序·小程序
i220818 Faiz Ul21 小时前
个人健康系统|健康管理|基于java+Android+微信小程序的个人健康系统设计与实现(源码+数据库+文档)
android·java·vue.js·spring boot·微信小程序·毕设·个人健康系统
博客zhu虎康1 天前
小程序:实现下拉刷新和上拉加载更多功能
小程序