Gif*_*guy 218 html javascript events event-handling javascript-events
我想阻止标准上下文菜单,并手动处理右键单击事件.
这是怎么做到的?
Cha*_*ase 313
使用该oncontextmenu
活动.
这是一个例子:
<div oncontextmenu="javascript:alert('success!');return false;">
Lorem Ipsum
</div>
Run Code Online (Sandbox Code Playgroud)
并使用事件监听器:
el.addEventListener('contextmenu', function(ev) {
ev.preventDefault();
alert('success!');
return false;
}, false);
Run Code Online (Sandbox Code Playgroud)
不要忘记返回false,否则标准上下文菜单仍会弹出.
如果你打算使用你编写的函数而不是javascript:alert("Success!")
,请记住在函数和oncontextmenu
属性中返回false .
cyb*_*ard 31
我认为你正在寻找这样的东西:
function rightclick() {
var rightclick;
var e = window.event;
if (e.which) rightclick = (e.which == 3);
else if (e.button) rightclick = (e.button == 2);
alert(rightclick); // true or false, you can trap right click here by if comparison
}
Run Code Online (Sandbox Code Playgroud)
(http://www.quirksmode.org/js/events_properties.html)
然后使用onmousedown甚至使用函数rightclick()(如果你想在整个页面上全局使用它,你可以这样做 <body onmousedown=rightclick(); >