微信小程序如何设置左侧导航栏跟随页面滑动

一、使用 scroll-view 组件实现页面滚动

  1. 在页面的 wxml 文件中,将需要滚动的内容包裹在scroll - view组件内,例如:
html 复制代码
<scroll-view scroll-y="true" style="height: 800rpx;">
    <!-- 这里放置页面的主要内容 -->
</scroll-view>

其中scroll - y="true"表示允许垂直滚动,height属性根据实际布局需求设置滚动区域的高度。

二、导航栏样式和布局

  1. 设计左侧导航栏的样式,可使用position: fixed将导航栏固定在左侧,例如在 wxss 文件中:
css 复制代码
.left-nav {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: 200rpx;
    /* 其他样式设置 */
}

三、关联滚动和导航栏状态

  1. 在 js 文件中,通过监听scroll - view的滚动事件bindscroll来获取滚动的位置信息。
javascript 复制代码
Page({
    data: {
        scrollTop: 0
    },
    onScroll: function (event) {
        this.setData({
            scrollTop: event.detail.scrollTop
        });
    }
})
  1. 根据滚动位置来动态调整导航栏的样式,例如改变导航栏的类名或者直接修改样式属性来实现跟随效果。比如当滚动到一定位置后改变导航栏的透明度等相关样式。
html 复制代码
<view class="left-nav {{scrollTop > 100? 'nav-scroll' : ''}}">
    <!-- 导航栏内容 -->
</view>

在 wxss 文件中:

css 复制代码
.nav-scroll {
    /* 新的导航栏样式,例如改变透明度等 */
    opacity: 0.8;
}
相关推荐
Rooting++3 小时前
小程序{{ }}和vue{{ }}语法的区别
前端·vue.js·小程序
博、、7 小时前
折扣卡CPS系统源码实战开发指南:从架构设计到落地部署全解析
小程序·需求分析
夹锌饼干9 小时前
notepad++ 批量选中行尾 多行编辑行尾 选中行尾
notepad++
lhldsg9 小时前
折扣卡CPS小程序定制全流程实战指南:从需求分析到上线部署
java·前端·小程序
suliqiang10 小时前
【前端技术】 Web 前端技术36年 演进全景图
信息可视化·微信小程序·小程序·前端框架·uni-app·人机交互·xcode
weixin_493503671 天前
商会小程序附件上传:分片上传 + OSS 直传完整实现(Vue3 + 阿里云 OSS 实战)
阿里云·小程序·云计算
优度网1 天前
微信小程序主体变更公证书线上办理流程与业务交接风险规避方法浅析(2026)
小程序
ynchyong1 天前
微信小程序启动顺序遇到的一个坑
前端·微信小程序
m0_587383001 天前
外卖CPS系统开发实战:从架构设计到运营落地全指南
java·spring·小程序·架构·需求分析
T01156181 天前
全栈项目实战手记|艺培场馆课时预约小程序 PC 管理端 Demo 完整开发成果展示
小程序