微信小程序下面商品左右滑动上面tab也跟随变动功能实现

 更新时间:2022年07月11日 14:33:25   作者:努力中的小白羊  
这篇文章主要介绍了小程序下面商品左右滑动上面tab也跟随变动功能,也就是点击tab切换下面的商品信息,滑动下面的商品信息tab也进行切换,本文给大家分享实现代码,需要的朋友可以参考下

小程序下面商品左右滑动上面tab也跟随变动功能

点击tab切换下面的上面信息,商品左右滑动切换上面的tab分类

功能描述:点击tab切换下面的商品信息;滑动下面的商品信息tab也进行切换。

第一步:我们先来说一下上面的tab,tab我们使用scroll-view scroll-x="true" 就可以。

<scroll-view class="cates" scroll-x="true" scroll-with-animation="true" >
    <block wx:for="{{cates}}" wx:key="index">
      <view class="{{item.id === currentId?'cate-item-act cate-item':'cate-item'}}" data-id="{{item.id}}" bindtap="cateChange">{{item.name}}</view>
    </block>
</scroll-view>
/* 分类 */
.cates {
  position: fixed;
  z-index: 100;
  top: 0;
  white-space: nowrap;
  width: 100%;
  padding: 20rpx 30rpx;
  box-sizing: border-box;
  font-family: Hiragino Sans GB;
  background-color: #fff;
  border-top: 1rpx solid #eee;
}
.cates .cate-item {
  display: inline-block;
  padding: 10rpx 20rpx;
  font-size: 26rpx;
  margin-right: 20rpx;
  color: #767A84;
}
.cates .cate-item:last-child{
  margin-right: 0rpx;
}
.cates .cate-item-act {
  background: #3293FF;
  color: #fff;
  border-radius: 48rpx;
}

第二步:接着就是下面的商品部分,我们可以使用swiper +scroll-view 来完成。

<view class="content">
    <swiper class="cont-swiper" bindchange="swiperSwitchTab" style="height: 600px;">
      <block wx:key="index" wx:for="{{cates}}">
        <swiper-item class="cont-swiper-item" data-id="{{item.id}}" style="height:100%" wx:key="*this">
          <!-- 每个tab对应的商品 -->
          <scroll-view scroll-y="true" style="height: 600px;" bindscroll="contenScrollY" scroll-with-animation="true">
            <block wx:for="{{serviceList}}" wx:key="index">
              <view class="con-item">{{item.name}}</view>
            </block>
          </scroll-view>  
        </swiper-item>
      </block>
    </swiper>
 </view>
/* 内容 */
.content {
  width: 100%;
  height: 100%;
  padding: 130rpx 0rpx;
  box-sizing: border-box;
}
.content .cont-swiper {
  padding: 0 30rpx;
}
.content .con-item {
  width: 100%;
  height: 200rpx;
  background-color: rgb(180, 140, 221);
  margin-top: 30rpx;
  border-radius: 20rpx;
  line-height: 200rpx;
  text-align: center;
}

需要注意的问题:

1 swiper 本身是有高度的,不会因为内部元素撑开。

2 scroll-view scroll-y="true" 是需要给scroll设置高度。所以代码中标明的橘色是为了说明这个问题

swiperSwitchTab(e){
    // e.detail.current tab的index
    console.log('左右滑动下面商品',e.detail.current)
    this.setData({
      currentId: this.data.cates[e.detail.current].id
    })
    // 根据id去调用接口,替换listData数据   this.getData();}

复制上面代码试试效果吧!

到此这篇关于小程序下面商品左右滑动上面tab也跟随变动功能的文章就介绍到这了,更多相关小程序tab内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • js 冒泡事件与事件监听使用分析

    js 冒泡事件与事件监听使用分析

    js 冒泡事件与事件监听 代码分析
    2009-09-09
  • JS中比较冷门但非常好用的方法总结

    JS中比较冷门但非常好用的方法总结

    在Js中有一些比较冷门但是非常好用的方法,我在这里称之为高级方法,这些方法没有被广泛使用或多或少是因为存在一些兼容性的问题,不是所有的浏览器都读得懂的,这篇文章主要就是对这些方法做一个总结,让我们一起来看一下吧
    2023-06-06
  • 小试小程序云开发(小结)

    小试小程序云开发(小结)

    这篇文章主要介绍了小试小程序云开发(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06
  • JS实现滑动菜单效果代码(包括Tab,选项卡,横向等效果)

    JS实现滑动菜单效果代码(包括Tab,选项卡,横向等效果)

    这篇文章主要介绍了JS实现滑动菜单效果代码,以实例形式实现了包括Tab,选项卡,横向等效果,非常简单实用,需要的朋友可以参考下
    2015-09-09
  • 基于dataset的使用和图片延时加载的实现方法

    基于dataset的使用和图片延时加载的实现方法

    下面小编就为大家分享一篇基于dataset的使用和图片延时加载的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • JavaScript实现表格点击排序的方法

    JavaScript实现表格点击排序的方法

    这篇文章主要介绍了JavaScript实现表格点击排序的方法,可实现点击顶部数据项标题实现对应数据列的排序效果,涉及javascript鼠标事件及数据排序的技巧,需要的朋友可以参考下
    2015-05-05
  • 学习RxJS之JavaScript框架Cycle.js

    学习RxJS之JavaScript框架Cycle.js

    这篇文章主要介绍了学习RxJS之JavaScript框架Cycle.js ,它是一个极简的JavaScript框架(核心部分加上注释125行),提供了一种函数式,响应式的人机交互接口,需要的朋友可以参考下
    2019-06-06
  • 微信小程序canvas动态时钟

    微信小程序canvas动态时钟

    这篇文章主要为大家详细介绍了微信小程序canvas动态时钟,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • JS数组排序方法实例分析

    JS数组排序方法实例分析

    这篇文章主要介绍了JS数组排序方法,结合实例形式分析了javascript数组冒泡排序与选择排序原理及实现技巧,需要的朋友可以参考下
    2016-12-12
  • JS库之wow.js使用方法

    JS库之wow.js使用方法

    近日,在做项目中,需要做到滚动条滑到某个位置时,才能显示动画,网上查询到有个wow.js可以达到要求,现在把使用方法做如下总结,需要的朋友参考下吧
    2017-09-09

最新评论