小程序中判断左右滑动操作

小程序中判断左右滑动操作

test.wxml

<view class='body' style='{{moveLeft}}' bindtouchstart='touchStart' bindtouchmove='touchMove' bindtouchend='touchEnd'>
测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字
</view>

test.wxss
.body{ width: 100%; min-height: 100vh; position: relative;}

test.js

  ,touchStart: function (e) {
    if (e.touches.length == 1) {
      this.setData({
        startX: e.touches[0].clientX
      });
    }
  },
  touchMove: function (e) {
    if (e.touches.length == 1) {
      var moveX = e.touches[0].clientX;
      var diffX = this.data.startX - moveX;
      var moveLeft = '';
      if (diffX < 0) { //向右
        moveLeft = 'left:' + -(diffX < -90 ? -90 : diffX) + 'px;';
      } else if (diffX > 0) { //向左
        moveLeft = 'left:-' + (diffX > 90 ? 90 : diffX) + 'px;';
      }else{
        moveLeft = 'left:0px;';
      }
      this.setData({
        moveLeft: moveLeft
      });
    }
  },
  touchEnd: function (e) {
    if (e.changedTouches.length == 1) {
      var endX = e.changedTouches[0].clientX;
      var diffX = this.data.startX - endX;
      var moveLeft = 'left:0px;';
      this.setData({
        moveLeft: moveLeft
      });
    }
  },

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值