gpt4 book ai didi

javascript - 安卓腾讯/X5/微信浏览器右键菜单关闭方法

转载 作者:搜寻专家 更新时间:2023-11-01 04:28:38 25 4
gpt4 key购买 nike

我有一个网络应用程序,它有一些交互,用户需要长按/按住屏幕才能前进,这一切都很好,但是在中国的微信上,以及类似的浏览器/ WebView ,如腾讯(X5),按住屏幕时会出现上下文菜单。

我尝试了以下代码(以及事件中的所有变体):

// Long press, then the following code executes
document.addEventListener('contextmenu', (e) => {
alert('Right click');
e.preventDefault();
e.stopPropagation();
return false;
});
// As soon as the alert is dismissed, the context menu still appears

警报会在应用的上下文菜单前立即弹出,但我仍然无法阻止它的发生。

如有任何帮助,我们将不胜感激。我知道中国的 Android 版微信有一个原生的 Javascript 桥,可以通过自定义属性等禁用其他怪癖,我只是没能解决这个问题。

这可以很容易地使用 https://play.google.com/store/apps/details?id=com.tencent.mtt 进行测试(在中国境外工作)。

谢谢

最佳答案

这对我有用:

element.addEventListener('touchstart', (e) => {
e.stopPropagation();
e.preventDefault();

// Trigger desired event here
});

取消touchstart事件似乎让浏览器认为指针不再被按下,而不是尝试取消任何基于长按事件的 Action 。您可以将元素替换为主体以防止它发生在所有内容上,但这可能不被推荐(UX + 其他副作用)。

关于javascript - 安卓腾讯/X5/微信浏览器右键菜单关闭方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51027086/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com