时间:2021-07-01 10:21:17 帮助过:3人阅读
计算手势在手机屏幕上滑动时,手势滑动的距离,代码如下:
function wetherScroll(){
var startX = startY = endX =endY =0;
var body=document.getElementsByTagName("body");
body.bind('touchstart',function(event){
var touch = event.targetTouches[0];
//滑动起点的坐标
startX = touch.pageX;
startY = touch.pageY;
// console.log("startX:"+startX+","+"startY:"+startY);
});
body.bind("touchmove",function(event){
var touch = event.targetTouches[0];
//手势滑动时,手势坐标不断变化,取最后一点的坐标为最终的终点坐标
endX = touch.pageX;
endY = touch.pageY;
// console.log("endX:"+endX+","+"endY:"+endY);
})
body.bind("touchend",function(event){
var distanceX=endX-startX,
distanceY=endY - startY;
// console.log("distanceX:"+distanceX+","+"distanceY:"+distanceY);
//移动端设备的屏幕宽度
var clientHeight; =document.documentElement.clientHeight;
// console.log(clientHeight;*0.2);
//判断是否滑动了,而不是屏幕上单击了
if(startY!=Math.abs(distanceY)){
//在滑动的距离超过屏幕高度的20%时,做某种操作
if(Math.abs(distanceY)>clientHeight*0.2){
//向下滑实行函数someAction1,向上滑实行函数someAction2
distanceY <0 ? someAction1():someAction2();
}
}
startX = startY = endX =endY =0;
})
}相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
以上就是touch事件如何获取滑动距离长度的详细内容,更多请关注Gxl网其它相关文章!