禁用网页上的长按上下文菜单(Android 4.4 - Firefox 34.0)

时间:2015-01-12 16:17:46

标签: android jquery html css firefox

就像标题所说,我想在我的网页上长时间点击几乎所有内容后禁用上下文菜单。这就是说,即使上下文不显示,我仍然希望所有链接都处于活动状态。还有一件事,这只会在客户端使用相同平板电脑,操作系统和Web浏览器的本地网络中使用。

我一直在尝试这个Solution,但由于它打破了链接,所以我不满意。和其他答案对我不起作用。 我不是javascript pro,所以我可能会错过一些观点...

CSS -webkit-touch-callout:none!important;如果我没错,请不要使用Firefox。

那么如何实现呢? CSS? HTML? JAVASCRIPT?

感谢您的合作;)

更新

我发现这段代码会创建新的上下文菜单并阻止默认但......

<script>
if (document.addEventListener) {
    document.addEventListener('contextmenu', function(e) {
        alert("You've tried to open context menu"); //here you draw your own menu
        e.preventDefault();
    }, false);
} else {
    document.attachEvent('oncontextmenu', function() {
        alert("You've tried to open context menu");
        window.event.returnValue = false;
    });
}
</script>

...原始上下文菜单仍然在新的菜单后打开:(

1 个答案:

答案 0 :(得分:0)

你的解决方案很好,但你被评论误导了。您没有绘制任何新的上下文菜单,因此您的代码只会停止contextmenu事件。

document.addEventListener('contextmenu', function(e) {
    e.preventDefault();
}, false);