最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

微信小程序实现tab左右切换效果

来源:懂视网 责编:小OO 时间:2020-11-27 22:07:57
文档

微信小程序实现tab左右切换效果

本文实例为大家分享了微信小程序实现tab左右切换展示的具体代码,供大家参考,具体内容如下:分析;1、设置data-current属性用于:点击当前项时,通过点击事件swichNav中处理e.dataset.current取到点击的目标值。2、swiper组件的current组件用于控制当前显示哪一页。3、swiper组件绑定change事件switchTab,通过e.detail.current拿到当前页。wxml。
推荐度:
导读本文实例为大家分享了微信小程序实现tab左右切换展示的具体代码,供大家参考,具体内容如下:分析;1、设置data-current属性用于:点击当前项时,通过点击事件swichNav中处理e.dataset.current取到点击的目标值。2、swiper组件的current组件用于控制当前显示哪一页。3、swiper组件绑定change事件switchTab,通过e.detail.current拿到当前页。wxml。

本文实例为大家分享了微信小程序实现tab左右切换展示的具体代码,供大家参考,具体内容如下

分析

1、设置data-current属性用于:点击当前项时,通过点击事件swichNav中处理e.dataset.current取到点击的目标值。

2、swiper组件的current组件用于控制当前显示哪一页

3、swiper组件绑定change事件switchTab,通过e.detail.current拿到当前页

wxml:

<view class="record-box">
 <view class="nav">
 <scroll-view scroll-x="true" class="navbar-box" srcoll-left="{{navScrollLeft}}"
 srcoll-width-animation="{{true}}">
 <block wx:for="{{recordMain}}" wx:for-index="idx" wx:for-item="navItem" wx:key="idx">
 <view class="nav-item {{currentTab == idx ? 'text' : ''}}" data-current="{{idx}}" 
 bindtap="switchNav">
 <label>{{navItem.text}}</label>
 </view>
 </block>
 </scroll-view>
 </view>
</view>
------------------------------------------------
<view class="record-ft">
 <swiper class="tab-box" current="{{currentTab}}" duration="300" bindchange="switchTab">
 <swiper-item wx:for="{{[0,1,2,3]}}" wx:for-item="tabItem" wx:for-index="idx" wx:key="idx"
 class="tab-cnetent">
 <block wx:for="{{tabContent}}" wx:for-item="tabItem" wx:key=" ">
 <view class="padding-box" bindtap="navigateUrl" data-url="/pages/index/index">
 <view class="weui-list-box weui-main">
 <view class="weui-list-bd">
 <view class="img-box">
 <image src="{{tabItem}}" class="img" mode="widthFix"></image>
 </view>
 </view>
 <view class="weui-list-ft">
 <view class="weui-title">
 <view class="text-flow clamp-xs font-sm">{{tabItem.title}}</view>
 <view class="text">
 <laber>{{tabItem.text}}</laber>
 <laber>{{tabItem.text}}</laber>
 </view>
 </view>
 <view class="weui-cost">
 <view>¥<laber>{{tanItem.cost}}</laber></view>
 </view>
 </view>
 </view>
 </view>
 </block>
 </swiper-item>
 </swiper>
</view>

JS

Page ({
 const app = getApp()
 data: {
 recordMian: [
 {
 title: "插画艺术"
 },
 {
 title: "工艺作品"
 },
 {
 title: "服装艺术"
 },
 {
 title: "三维建模"
 },
 ],
 tabContent: [
 {
 title: "台灯卧室床头 简约现代书房 北欧宜家创意装饰个性圆球台灯床头灯",
 text: "台灯",
 cost: "1255",
 imgUrl: "http://img.weiye.me/zcimgdir/album/file_59b8f7b66ba7f.jpg",
 },
 {
 title: "雪域冰雪天地8寸牛乳芝士蛋糕",
 text: "蛋糕",
 cost: "15",
 imgUrl: "http://img.weiye.me/zcimgdir/album/file_59b8f7b66ba7f.jpg",
 },
 ],
 currentTab: 0,
 navScrollLeft: 0
 },
 // 事件处理函数
 onLoad: function() {
 // 控制record-box随鼠标切换调整位置
 if (app.globalData.userInfo) {
 this.setData({
 userInfo: app.globalData.userInfo,
 hasUserInfo: true
 })
 } else if (this.data.canIUse) {
 app.userInfoReadyCallback = res => {
 this.setData({
 userInfo: res.userInfo,
 hasUserInfo: true
 })
 }
 }
 else {
 wx.getUserInfo({
 success: res => {
 app.globalData.userInfo = res.userInfo
 this.setData({
 userInfo: res.userInfo,
 hasUserInfo: true
 })
 }
 })
 }
 wx.getSystemInfo({
 success: (res) => {
 this.setData({
 pixelRatio: res.pixelRatio,
 windowHeight: res.windowHeight,
 windowWidth: res.windowWidth
 })
 }
 })
 },
 // 滑动事件
 // 点击标题切换当前页时改变样式
 switchNav(event) {
 var cur = event.currentTarget.dataset.current;
 if (this.data.currentTab == cur) {
 return false;
 } else {
 this.setData({
 currentTab: cur
 })
 }
 },
 // 滚动切换标签样式 
 switchTab(event) {
 var cur = evnet.detail.current;
 var singeNavWidth = this.data.windowWidth / 5;
 this.setData({
 currentTab: cur,
 navScrollLeft: (cur - 2) * singleNavWidth
 });
 }
})

效果图:

文档

微信小程序实现tab左右切换效果

本文实例为大家分享了微信小程序实现tab左右切换展示的具体代码,供大家参考,具体内容如下:分析;1、设置data-current属性用于:点击当前项时,通过点击事件swichNav中处理e.dataset.current取到点击的目标值。2、swiper组件的current组件用于控制当前显示哪一页。3、swiper组件绑定change事件switchTab,通过e.detail.current拿到当前页。wxml。
推荐度:
标签: 微信 小程序 切换
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top