// this works $(document).on('contextmenu', function() { return false; });
// without the code above, this works too $(document).on('contextmenu', '#special', function() { alert('#special right clicked'); });
如何组合这两段代码,以便我可以在整个文档上禁用上下文菜单,但id为#special的文件除外。
答案 0 :(得分:11)
$(document).on('contextmenu', function(e) {
if (!$(e.target).is("#special"))
return false;
alert('#special right clicked');
// you may want e.preventDefault() here
});
使用.is()
method可以测试被点击的元素是否与任何选择器匹配,这基本上是您在幕后进行的原始委托.on()
调用,但是如果您正在检查元素ID说:
if (e.target.id != "special")
return false;