javascript - 使触控板滚轮事件运行一次
问题描述
我正在尝试在我的应用程序的鼠标触控板上实现向后和向左滑动。我尝试使用滚动,但我认为因为我的应用程序已将溢出设置为隐藏(这是必要的),所以没有任何反应。这是我的代码:
window.addEventListener('wheel', function(event) {
event.preventDefault();
let deltaX = Math.sign(event.deltaX);
// Check for pinch/zoom
if (event.ctrlKey) {
if (event.wheelDelta > 0) {
// increase zoom
} else {
// decrease zoom
}
// when deltaX is 1 or -1, a swipe action has taken place
} else if (deltaX == -1) {
// go forward
goForward();
} else if (deltaX == 1) {
// go back
goBack();
}
}
现在,这种方法有效,但由于不断滑动,goForward 和 goBack 函数会一次又一次地运行。我希望他们只运行一次。我还想考虑到用户可以一次又一次地滑动的事实。有什么帮助吗?另外,是否有可能以某种方式调用滚动并将溢出设置为隐藏,因为这会让我的生活更轻松?非常感谢
解决方案
推荐阅读
- php - 如何使用 cookie 替换 from 值?
- c++ - 复数错误输出
- javascript - refs 上的 addEventListener 反应显示奇怪的行为
- python - 在 docker 映像中使用转换器包时出现问题
- c# - 如何在此代码中正确使用取消令牌?
- laravel - vue-meta / Inertia:页面渲染之间的标题“未定义”
- python - 在 conda 环境中安装 PyQT
- flutter - Flutter - 在复制到服务器时修剪 0.5 秒的 mp3 结尾而不重新处理整个文件?
- android - 用于互联网连接的广播接收器,当热点开启时,它将调用两次
- azure - Azure Blob Storage Informatica 写入行为