移动端判断用户滑动方向

思路:

    (1)获取用户的滑动手指初始坐标

    (2)获取用户滑动结束时的手指坐标

    (3)比较x,y方向上的绝对值,用于判断滑动方向是左右还是上下

    (4)最后实际判断具体方向

/*注意touchstart , touthmove 中 坐标存放在e.targetTouches[0]*/
/* touchend 中 坐标存放在 e.changedTouches[0] */
var firstX = 0,firstY = 0,endX = 0,endY = 0;//初始化坐标值
window.addEventListener("touchstart",function(e){
	firstX = e.targetTouches[0].clientX;
	firstY = e.targetTouches[0].clientY;
})
window.addEventListener("touchend",function(e){
	endX = e.changedTouches[0].clientX;
	endY = e.changedTouches[0].clientY;
	moveX = endX - firstX;//判断左右
	moveY = endY - firstY;//判断上下
	if(Math.abs(moveX) > 60 || Math.abs(moveY) > 60){//判断是滑动,不是点击
		if(Math.abs(moveX) > Math.abs(moveY))){
			/*判断横向移动的距离和纵向移动的距离大小对比,判断是左右还是上下*/
			var ele = moveX > 0 ? "向右" : "向左";
			alert(ele);
		}else{
			var ele = moveY > 0 ? "向下" : "向上";
			alert(ele);
		}
	}
})

  

转载于:https://www.cnblogs.com/ylp0617/p/8178741.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值