怎么" disableRightClick"函数在JavaScript中调用

时间:2018-06-18 17:44:00

标签: javascript

如何在下面的脚本中调用disableRightClick函数,声明document.oncontextmenu=disableRightClick的作用是什么?请解释一下。



document.oncontextmenu = disableRightClick;
// how this function is called 
function disableRightClick(event) {
  event = event || window.event;
  if (event.preventDefault) {
    event.preventDefault();
  } else {
    event.returnValue = false
  }
}

<h1>On this page right click is disabled</h1>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

document.oncontextmenu是单击鼠标右键时的事件。 document.oncontextmenu = disableRightClick;此行正在观看右键单击事件的文档,当发生这种情况时,它会调用函数disableRightClick。在我的示例中,我将事件移动到<h1>标记,以便它可以证明这一点。

  

窗口上右键单击事件的事件处理程序属性。除非   防止默认行为(请参阅下面有关如何操作的示例   这个),浏览器上下文菜单将激活(虽然IE8有一个错误   如果使用上下文菜单,则不会激活上下文菜单   事件处理程序已定义)。请注意,此事件将发生在任何情况下   非禁用的右键单击事件,不依赖于元素   拥有“contextmenu”属性。

https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/oncontextmenu

此示例我将事件仅放在标头标记上,因此如果您右键单击标头标记​​,它只会禁用默认的右键单击事件。

//document.oncontextmenu = disableRightClick;
// how this function is called 
function disableRightClick(event) {
  event = event || window.event;
  if (event.preventDefault) {
    event.preventDefault();
  } else {
    event.returnValue = false
  }
}
<h1 oncontextmenu="disableRightClick(); return false;">On this header right click is disabled</h1>