PC和移动端判断滑动方向
- 有了思路并不难 ,多多思考;
- 重点:需要知道鼠标点击的位置,以及位移的位置 ,只要得到了这两点进行对比就能知道方向。
var startX, startY, moveEndX, moveEndY, moveX, moveY;
$("元素").mousedown(function(e){
e.preventDefault();
startX = e.pageX,
startY = e.pageY;
$(this).mousemove(function(e){
e.preventDefault();
moveEndX = e.pageX,
moveEndY = e.pageY;
moveX = moveEndX - startX,
moveY = moveEndY - startY;
if( moveX > 0 ){ console.log("向右") }else{ console.log("向左") }
if( moveY < 0 ){ console.log("向上") }else{ console.log("向下") }
})
}).mouseup(function(){
$(this).off("mousemove")
})
var startX, startY, moveEndX, moveEndY, moveX, moveY;
$("元素").on("touchstart", function(e) {
e.preventDefault();
startX = e.originalEvent.changedTouches[0].pageX || e.targetTouches[0].pageX,
startY = e.originalEvent.changedTouches[0].pageY || e.targetTouches[0].pageY;
});
$("元素").on("touchmove", function(e) {
e.preventDefault();
moveEndX = e.originalEvent.changedTouches[0].pageX || e.targetTouches[0].pageX,
moveEndY = e.originalEvent.changedTouches[0].pageY || e.targetTouches[0].pageY;
moveX = moveEndX - startX,
moveY = moveEndY - startY;
if( moveX > 0 ){ console.log("向右") }else{ console.log("向左") }
if( moveY < 0 ){ console.log("向上") }else{ console.log("向下") }
});