当前位置: 首页 > 面试题库 >

如何在JavaScript中禁用右键单击上下文菜单

郁博学
2023-03-14
问题内容

这并不是说我要防止“查看源代码”或类似的愚蠢行为,而是要为某些元素制作一些自定义上下文菜单。

编辑:答案的答复:我已经尝试过:

<a id="moo" href=''> </a>

<script type="text/javascript">
    var moo = document.getElementById('moo');

    function handler(event) {
        event = event || window.event;

        if (event.stopPropagation)
            event.stopPropagation();

        event.cancelBubble = true;
        return false;
    }

    moo.innerHTML = 'right-click here';

    moo.onclick = handler;
    moo.onmousedown = handler;
    moo.onmouseup = handler;
</script>

问题答案:

捕获onContextMenu事件,然后在事件处理程序中返回false。

event.button无论如何,您也可以在某些浏览器中捕获click事件并使用哪个鼠标按钮触发该事件。



 类似资料:
  • 问题内容: 我当前正在通过右键单击实例化并将其位置设置为鼠标位置的位置来创建右键单击上下文菜单。是否有更好的方法? 问题答案: 您可能正在手动调用菜单。这会导致菜单中出现一些令人讨厌的越野车行为。 该方法处理所有需要发生的事情(在鼠标悬停时突出显示事情,并在必要时关闭弹出窗口),其中使用只是显示菜单而无需添加任何其他行为。 要进行右键单击弹出菜单,只需创建一个。 然后,您所要做的就是向要弹出菜单的

  • 问题内容: 是否可以在不使用JavaScript的情况下禁用网页上的右键单击?我之所以这样问,是因为大多数浏览器都允许用户禁用JavaScript。 如果没有,如何使用JavaScript禁用右键单击? 问题答案: 您可以使用JavaScript通过为“contextmenu”事件添加事件侦听器并调用方法来做到这一点: 话虽这么说:不要做。 为什么?因为它除了使用户烦恼之外什么也做不到。同样,许多

  • 因此,我仍然有点了解JavaFX,我能够禁止在文本框中输入文本,但我不知道如何防止右键单击时出现上下文菜单。有人知道如何防止右键单击时弹出默认上下文菜单吗?`

  • 我在Visual Studio C#IDE中定义了一个ContextMenuStri上下文菜单,并对程序进行编码,以便当用户右键单击屏幕上的一个对象时,上下文菜单成功弹出。用户可以从上下文菜单中选择一个项目,代码成功确定用户选择了哪个上下文菜单项。到目前为止还不错。问题是上下文菜单接受右键单击作为选择上下文菜单项的机制。当我不小心双击右键单击屏幕上的一个对象时,我注意到了这一点...菜单在第一次单

  • 我在上下文菜单中使用右键单击功能时遇到问题。我的菜单项没有显示,因为我的第二个ngFor=“let row”条件。。。但我需要右键单击选中的行对象,以便从该行传入json值。 现在模式正在弹出,但没有显示菜单项按钮,因此我无法使用click事件。 我做错了什么? view.component.html view.component.ts

  • 问题内容: 我想知道是否有最佳实践/正确的方法来为React组件设置右键菜单。 我目前有这个… 可以,但是感觉有点混乱,我想知道是否还有其他方法可以使用,任何信息将不胜感激, 谢谢! 问题答案: 更新: 想通了-这是您可以做的 在渲染中,您可以将函数传递给onContextMenu,以使该react组件发生右键单击。