好吧,据我了解,到目前为止,我们有2种方法抑制浏览器默认右键单击菜单 - 优化?
首先一些JavaScript,我可以在给定的脚本内使用。但是,这切换右键单击一切。
window.oncontextmenu = function() {
return false;
};
或HTML可以编码
<body oncontextmenu="return false;">
,但我不能迄今发现的任何地方,这将使我的JavaScript或jQuery的解决方案,我可以把这个给定的选择。这是不可能的,或者我误解了某些东西。
我发现在单一的右键单击我的子菜单后立即出现浏览器的默认菜单。我发现要抑制这一点的唯一方法是将oncontextmenu设置为false。有没有更完善的解决方案?
进一步说明,以公认的答案
还成功地使用委托应用于动态菜单:
$(document).on("contextmenu", "#existing_Flavours .field_Input_Left.flavour", function(){
return false; // suppress browsers default right click menu
});
[不这样做(http://www.sitepoint.com/dont-disable-right-click/)。这很烦人,您的用户将A)再也不会访问您的网站,或B)通过脚本拦截器和/或手动绕过它。 – jbabey
这是完全相同的副本。 http://stackoverflow.com/questions/706655/bind-event-to-right-mouse-click –
嗯,我不能说我完全理解为什么这应该是。但我相信你是对的。但肯定必须有一种方法来阻止默认菜单出现在使用右键单击的位置。 @jbabey – codepuppy