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

时间:2018-06-20 21:18:39   收藏:0   阅读:5060

最近做一个项目,由于用到了竖向swiper,导致占用屏幕过大,用户滑动总是滑动到swiper组件,页面无法向下拉动,于是找各种办法禁止用户手动滑动swiper组件。

经过网上一番查找,网友们也是闹洞大开,各种方法都想出来了,有用透明蒙层覆盖的,这不失为一种很好的解决办法,但是如果swiper上有元素需要点击就没有办法了。

继续查找,于是找到了用  catchtouchmove  事件来截获用户手动滑动事件,这样既解决了禁用用户手动滑动,有解决了有点击按钮不影响使用

贴代码:

WXML:

<swiper class=‘yaohe‘ vertical=‘true‘ circular=‘true‘ autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">
    <block wx:for=‘{{yaohe}}‘>
      <swiper-item catchtouchmove=‘catchTouchMove‘>   <!--重点这里-->
        <block wx:for=‘{{item}}‘>
          <view class=‘yaohe_item‘>
            <view class=‘yaohe_img‘>
              <image src=‘{{item.goods_icon}}‘></image>
            </view>
            <view class=‘yaohe_right‘>
              <view class=‘yaohe_text‘>{{item.goods_feature}}</view>
              <view class=‘boss_price‘>
                <view class=‘boss‘>{{item.shop_name}}</view>
                <view class=‘price‘ bindtap=‘goGoodsDetail‘ data-shop_goods_id=‘{{item.shop_goods_id}}‘>¥{{item.goods_price}}</view>
              </view>
            </view>
          </view>
        </block>
      </swiper-item>
    </block>
  </swiper>

 

 

JS:

// 截获竖向滑动
  catchTouchMove:function(res){
    return false
  }

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!