原生js移动端滑动事件
时间: 2024-03-13 16:44:55 浏览: 73
在原生JS中,可以使用`touchstart`、`touchmove`和`touchend`事件来实现移动端滑动事件。
例如,以下代码可以实现在移动端滑动页面时,输出当前滑动的方向:
```javascript
var startX, startY;
document.addEventListener('touchstart', function(e) {
startX = e.touches[0].clientX;
startY = e.touches[0].clientY;
});
document.addEventListener('touchmove', function(e) {
var endX = e.touches[0].clientX;
var endY = e.touches[0].clientY;
var direction = getDirection(startX, startY, endX, endY);
console.log(direction);
});
function getDirection(startX, startY, endX, endY) {
var deltaX = endX - startX;
var deltaY = endY - startY;
var angle = Math.atan2(deltaY, deltaX) * 180 / Math.PI;
if (angle >= -45 && angle < 45) {
return '向右滑动';
} else if (angle >= 45 && angle < 135) {
return '向下滑动';
} else if (angle >= -135 && angle < -45) {
return '向上滑动';
} else {
return '向左滑动';
}
}
```
这段代码监听了`touchstart`和`touchmove`事件,并且通过计算触摸点的坐标差,来判断当前滑动的方向。
阅读全文