Browser 浏览器上下文菜单自定义?

Browser 浏览器上下文菜单自定义?,browser,overriding,contextmenu,Browser,Overriding,Contextmenu,有没有办法在文本区域上覆盖浏览器右键单击上下文菜单中的“撤消”和“全选”选项 谢谢。我知道您可以注册到click()事件,执行一些跨浏览器的胡言乱语来获取单击的按钮,然后如果单击了正确的按钮,则返回false,从而阻止整个上下文菜单打开 但是,我认为不可能修改上下文菜单本身,至少不使用javascript 我应该补充一点,你可能想重新思考你为什么要这样做。这将永远不会成为防止任何事情发生的保护措施(有些人试图阻止从他们的网站复制图像),因为它可能只是通过关闭javascript来禁用 更新:好的

有没有办法在文本区域上覆盖浏览器右键单击上下文菜单中的“撤消”和“全选”选项


谢谢。

我知道您可以注册到click()事件,执行一些跨浏览器的胡言乱语来获取单击的按钮,然后如果单击了正确的按钮,则返回false,从而阻止整个上下文菜单打开

但是,我认为不可能修改上下文菜单本身,至少不使用javascript

我应该补充一点,你可能想重新思考你为什么要这样做。这将永远不会成为防止任何事情发生的保护措施(有些人试图阻止从他们的网站复制图像),因为它可能只是通过关闭javascript来禁用

更新:好的,所以你不想阻止用户做事,让他们按照你的方式做事。那么,我想最好的办法是:

  • 为用户提供一个工具栏,允许他们执行这些操作(从而使他们使用您的操作而不是默认操作)
  • 将常用的键盘快捷键映射到您的操作(Ctrl+A、Ctrl+Z等)
  • 将右键单击菜单替换为您自己的菜单

  • 您在另一条评论中提到,您无法复制复制/粘贴,这是正确的,但您可以实现自己的剪贴板(这只适用于您的webapp)如果你真的必须这样做。

    你不能编辑浏览器的内置上下文菜单,但是你可以使用
    窗口
    对象上的
    oncontextmenu
    事件禁用它并用你自己的替换它。我要提醒的是,这通常是一个坏主意。用户希望找到内置上下文菜单,如果找不到,通常会感到沮丧这里。

    当你说覆盖时,你是想删除/禁用这些项目,还是改变它们的功能?最好是改变。你看我有自己的“撤消”和“全部选择”,默认设置不会起作用。创建自己的菜单是没有用的,因为我无法模拟“复制”和“粘贴”,该死的安全性:PI并不是在试图阻止人们偷东西,拜托。我需要更改或禁用“撤消”和“全选”,因为它们可能也可能会在我的Web应用程序中造成混乱。正如我之前所说,无法模拟“复制”和“粘贴”…我确实希望我的用户从我的Web应用程序复制/粘贴到我的Web应用程序中/