uniapp滑动操作

<view @touchmove="handletouchmove" @touchstart="handletouchstart" @touchend="handletouchend">
</view>

  

data() {
        return {
            flag: 0,//1向左滑动,2向右滑动,3向上滑动 4向下滑动
                    text: '',//向哪里滑动
                    lastX: 0,
                    lastY: 0,
                    index:0
        }
               
}    
methods: {
        handletouchmove: function(event) {
            // console.log(event)
            if (this.flag !== 0) {
                return;
            }
            let currentX = event.changedTouches[0].pageX;
            let currentY = event.changedTouches[0].pageY;
            let tx = currentX - this.lastX;
            let ty = currentY - this.lastY;
            let text = '';
            this.mindex = -1;
            //左右方向滑动
            if (Math.abs(tx) > Math.abs(ty)) {
                if (tx < 0) {
                    text = '向左滑动';
                    this.flag = 1;
                //  this.getList();  //调用列表的方法
                } else if (tx > 0) {
                    text = '向右滑动';
                    this.flag = 2;
                }
            }
            //上下方向滑动
            else {
                if (ty < 0) {
                    text = '向上滑动';
                    this.flag = 3;
                //  this.getList();  //调用列表的方法
                } else if (ty > 0) {
                    text = '向下滑动';
                    this.flag = 4;
                }
            }

            //将当前坐标进行保存以进行下一次计算
            this.lastX = currentX;
            this.lastY = currentY;
            this.text = text;
        },
        handletouchstart: function(event) {
            // console.log(event)
            this.lastX = event.changedTouches[0].pageX;
            this.lastY = event.changedTouches[0].pageY;
        },
        handletouchend: function(event) {
            this.flag = 0;
            this.text = '没有滑动';
        },
}

  

转载于:https://www.cnblogs.com/lizhao123/p/11430689.html

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值