禁用长触摸事件的选项

问题描述 投票:0回答:2

在我的 JS 中,我有一个带有 touchstart 和 touchend 事件监听器的图像。 触摸图像可以操作 HTML 的一部分。只要用户将手指放在图像上,所需的操作就会继续产生。

我面临的问题(至少对于Android)是,当用户将手指放在图像上超过2秒时,会出现一个弹出窗口,询问您是否希望下载图像。

显然该弹出窗口属于移动操作系统 - 那么我如何才能防止这种情况发生?

javascript event-handling dom-events touch-event responsiveness
2个回答
2
投票

您可以使用此事件来停止长触摸

$(document).on('contextmenu', function (e) {
                return false;
            });

Javascript 有一个功能可以防止浏览器对相关事件执行默认操作。

event.preventDefault()

0
投票

对于那些寻找纯 JS 解决方案来解决此问题的人,以下方法也适用:

document.addEventListener("contextmenu", function (e) {
  e.preventDefault()
  e.stopPropagation()
  console.log("Stopped")
  return false;
});
© www.soinside.com 2019 - 2024. All rights reserved.