微信小程序导航栏跟随滑动效果的实现代码

时间:2021-05-18

效果图

.wxml

<view class='tabBar'><view class='tabItem wx:if="{{tabClick===0?"click":""}}"' bindtap='clickTab' data-index='0'>tab1</view><view class='tabItem wx:if="{{tabClick===1?"click":""}}"' bindtap='clickTab' data-index='1'>tab2 </view><view class='tabItem wx:if="{{tabClick===2?"click":""}}"' bindtap='clickTab' data-index='2'>tab3 </view><view class='underline' animation="{{animationData}}" style='left:{{isLeft}}'></view></view>

.wxss

.tabBar{height: 80rpx;background-color:#50B7EA;width: 100%;font-size: 28rpx;color: rgba(255,255,255,0.50);position: fixed;top: 0;left: 0;display: flex;justify-content: center;align-items: center;z-index: 997;}.tabItem{width: 33.333%;display: flex;align-content: center;justify-content: center;position: relative;height: 100%;font-size: 28rpx;}.click{color: white;}.underline{position: absolute;content: '';width: 84rpx;height: 3px;background-color:white;bottom: 0;}

.js

data:{tabClick: 0,animationData: {}, isLeft: '12%'},swiperTab: function (e) {var that = this;var index = e.detail.currentconsole.log(e.detail.current)var animation = wx.createAnimation({duration: 1000,timingFunction: "ease",})this.animation = animationif (index === 0) {animation.translate(0, 0).step();that.setData({animationData: animation.export()})that.setData({tabClick: e.detail.current});} else if (index === 1) {var w = wx.getSystemInfoSync().windowWidth;w = w * 0.32animation.translate(w, 0).step();that.setData({animationData: animation.export()})that.setData({tabClick: e.detail.current});} else if(index === 2){var w = wx.getSystemInfoSync().windowWidth;w = w * 0.65animation.translate(w, 0).step();that.setData({animationData: animation.export()})that.setData({tabClick: e.detail.current});}},

总结 

  以上所述是小编给大家介绍的微信小程序导航栏跟随滑动效果的实现代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章