在文档元素上捕获右键单击事件的方法是什么?我无法在任何地方找到任何事件处理程序。
答案 0 :(得分:4)
在许多浏览器上右键单击是特殊的,触发contextmenu
事件而不是click
事件。有些浏览器可以阻止默认行为,有些浏览器(例如Opera)则不会。更多信息:http://unixpapa.com/js/mouse.html
编辑:重读该页面(已经过了一段时间),看起来mousedown
和mouseup
比contextmenu
更可靠(尽管所有主流浏览器都会触发contextmenu
)。另一方面,click
似乎根本没有发生在任何重要的浏览器上。
答案 1 :(得分:3)
我认为有“oncontextmenu”事件,你可以勾选它。
这是基于jQuery的contextmenu处理程序,
http://www.trendskitchens.co.nz/jquery/contextmenu/
PS:虽然它在My Opera中不起作用。
答案 2 :(得分:2)
您可以使用
<强> window.oncontextmenu 强>
。的事件处理程序属性 右键单击窗口上的事件。
如果您需要在页面中禁用右键单击,则可以使用类似
的内容window.oncontextmenu = function () {
return false;
}
或者如果您需要提供自己的自定义上下文菜单,那么您也可以在函数内部进行编码。
答案 3 :(得分:1)
您可能想要点击或mousedown / up事件。来自quirksmode:
function doSomething(e) {
var rightclick;
if (!e) var e = window.event;
if (e.which) rightclick = (e.which == 3);
else if (e.button) rightclick = (e.button == 2);
alert('Rightclick: ' + rightclick); // true or false
}
答案 4 :(得分:0)
该事件具有“按钮”属性 所以lmb是0 mb是1 人民币是2