• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

小程序tab切换 点击左右滑动

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

wxml

<scroll-view scroll-x="true" class="navbar-box">
  <block wx:for="{{recordMain}}" wx:for-index="idx" wx:for-item="navItem" wx:key="idx">
    <view class="nav-item  " data-current="{{idx}}" bindtap="switchNav">
      <text class="{{currentTab == idx ? \'active\' : \'\'}}">{{navItem.title}}</text>
    </view>
  </block>
</scroll-view>

<swiper style="margin-top:80rpx;height:{{winHeight - 40}}px;" class="tab-box" current="{{currentTab}}" duration="300" data-current="{{idx}}" bindchange="switchTab">
  <swiper-item style="height:100%;overflow-y:scroll" wx:for="{{[0,1,2,3,4,5]}}" wx:for-item="tabItem" wx:for-index="idx" wx:key="idx" class="tab-cnetent">
    <block wx:for="{{tabContent}}"  wx:key=" " bindtap=\'myOrderDetails\'>
      <!-- 列表 -->
      <view class=\'listBox\'> 
          <view class=\'listTop\'>
            <image src=\'{{item.goodsImg}}\' class=\'goodsImg\'></image>
            <view class=\'infor\'>
              <view class=\'\'>
                <text class=\'name\'>{{item.name}}</text>
                <text class=\'price\'>¥{{item.price}}</text>
              </view>
              <view class=\'\'>
                <text class=\'choose\'>{{item.choose}}</text>
                <text class=\'number\'>×{{item.number}}</text>
              </view>
            </view>
          </view>
          <view class=\'listBottom\'>
            <view>共{{item.number}}件商品,合计:¥{{item.allPrice}}</view>
            <view class=\'status\'>
              <button>查看物流</button>
              <button>确认收货</button>
            </view>
          </view> 
      </view>
    </block>
  </swiper-item>
</swiper>

wxss

::-webkit-scrollbar {
  width: 0;
  height: 0;
  color: transparent;
}

.navbar-box {
  height: 70rpx;
  line-height: 70rpx;
  position: fixed;
  top: 0rpx;
  background: white
}

.nav-item {
  display: inline-block;
  width: 16.6%;
  text-align: center;
}

.nav-item text {
  padding-bottom: 10rpx;
}
 
page {
  background: #f2f2f2;
  font-size: 28rpx;
}

.active {
  color: #a53533;
  border-bottom: 4rpx solid #a53533;
  box-sizing: border-box;
}

.menu {
  font-size: 28rpx;
  width: 100%;
  /* overflow-x: scroll; */
  border-bottom: 20rpx solid #f2f2f2;
  padding: 30rpx 30rpx 0rpx 30rpx;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  position: fixed;
  top: 0rpx;
  z-index: 999;
  background: white;
}

.chooseNav {
  padding-bottom: 10rpx;
}

.listBox {
  padding: 30rpx;
  width: calc(100% - 60rpx);
  margin-left: 30rpx;
  margin-top: 30rpx;
  background: white;
  box-sizing: border-box;
  border-radius: 8rpx;
} 

.listTop {
  display: flex;
  justify-content: space-between;
}

.goodsImg {
  width: 200rpx;
  height: 200rpx;
  margin-right: 20rpx;
}

.infor {
  flex: 1;
  margin-top: 80rpx;
  font-size: 26rpx;
  color: #666;
}

.infor view {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.infor view:nth-of-type(2) {
  font-size: 24rpx;
}

.name, .choose {
  font-weight: 600;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 320rpx;
}

.price, .number {
  padding: 5rpx 10rpx;
  box-sizing: border-box;
}

.listBottom {
  text-align: right;
}

button::after {
  border: none;
}

.status button {
  display: inline-block;
  background: white;
  border: 1px solid #dedede;
  border-radius: 66rpx;
  font-size: 24rpx;
  margin-left: 20rpx;
  color: #666;
  padding: 0rpx 30rpx;
  box-sizing: border-box;
  height: 50rpx;
  line-height: 45rpx;
  margin-top: 20rpx;
}

wxjs

Page({ 
  data: {
    recordMain: [
       
      {
        title: "全部"
      },
      {
        title: "待付款"
      },
      {
        title: "待发货"
      },
      {
        title: "待发货"
      }, {
        title: "已完成"
      },
      {
        title: "已取消"
      },
    ],
    tabContent: [
      {
        goodsImg: \'/img/goods.png\',
        name: \'阿莎玛沙阿莎玛沙发阿莎玛沙发阿莎玛沙发阿莎玛沙莎玛沙发发\',
        price: "666",
        choose: \'已选:全新,16期\',
        number: \'32\',
        allPrice: \'888\'
      },
    ],
    currentTab: 0,
    navScrollLeft: 0,
    winWidth: 0,
    winHeight: 0, 
  },
  // 事件处理函数
  onLoad: function () {
    var that = this; 
    /** 获取系统信息*/
    wx.getSystemInfo({
      success: function (res) {
        that.setData({
          winWidth: res.windowWidth,
          winHeight: res.windowHeight,
        });
      }
    });
  },
  // 滑动事件
  // 点击标题切换当前页时改变样式
  switchNav:function(e) {
    console.log(e.currentTarget.dataset.current)
    var that = this
    var cur = e.currentTarget.dataset.current;
    if (that.data.currentTab == cur) {
      return false;
    } else {
      that.setData({
        currentTab: cur
      })
    }
  },
  // 滚动切换标签样式 
  switchTab: function(e) {
    console.log(e) 
    var that = this; 
    that.setData({
      currentTab: e.detail.current
    }); 

    if (e.detail.current == 0) {
      console.log(0)
    } 
    else if (e.detail.current == 1) {
      console.log(11)
    } 
    else if (e.detail.current == 2) {
      console.log(2222) 
    } 
    else if (e.detail.current == 3) {
      console.log(33333)
    }  
    else if (e.detail.current == 4) {
      console.log(44444444)
    } 
    else if (e.detail.current == 5) {
      console.log(55555)
    } 
  }
})


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
微信小程序tab切换功能的实现发布时间:2022-07-18
下一篇:
小程序切换 选项卡展示不同数据发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap