微信小程序swiper禁止用户滑动

本文介绍了两种在小程序中禁止用户滑动Swiper组件的方法。方案一是在swiper-item上使用catchtouchmove事件阻止滑动,但会影响页面滚动。方案二是通过添加一个覆盖层来阻止滑动,此方法更为推荐。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

小程序中有时候我们要禁止用户滑动 swiper 组件,该怎么做呢?

方案1:(不推荐)

swiper-item 上加上事件 catchtouchmove 即可。
缺点:当页面需要可以滚动时,手碰到 swiper 的地方是滑不动的。

wxml代码:
<swiper
      class="swiper"
      autoplay="{{true}}"
      interval="{{3000}}"
      duration="{{1000}}"
    >
      <block wx:for="{{data}}" wx:key="index">
        <swiper-item class="swiper-item" catchtouchmove="catchTouchMove">
          <image mode="aspectFill" class="swiper-item__img" src="{{item}}" />
        </swiper-item>
      </block>
    </swiper>
ts代码:
// 禁止用户滑动
  catchTouchMove() {
    return false;
  },
方案2:(推荐)

写一个伪类,用一个蒙层盖住swiper (记得把伪类层级设置得比swiper高)

.swiper {
  position: relative;
  &:after {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 2;
  }
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值