上篇博客我描述了手機的touch事件有touchstart,touchmove,touchend事件,然后在實際開發中,我們常常需要判斷手指是左滑還是右滑了,最近我就接到了這個需求,左右滑切換數據,那么應該怎么做呢?
大概的思路是:
1.獲取touchstart的開始的X坐標和Y坐標:
x1=event.targetTouches[0].pageX; y1=event.targetTouches[0].pageY;
2.獲取touchmove時的X、Y坐標;
x2 = event.targetTouches[0].pageX; y2 = event.targetTouches[0].pageY;
3.在touchend時判斷滑動方向
var changeY = x2-x1;
var changeX = y2-y1;
if(Math.abs(changeX)>Math.abs(changeY)&&Math.abs(changeY)>5){
//左右事件
if(changeX > 0) {
alert("右滑");
}else{
alert("左滑");
}
}else if(Math.abs(changeY)>Math.abs(changeX)&&Math.abs(changeX)>defaults.x){
//上下事件
if(changeY > 0) {
alert("下滑");
}else{
alert("上滑");
}
}else{
alert("點擊");
}
