查看此事件(绑定2个div相互重叠,查看jsfiddle)
.on('contextmenu', function() { ... });
DEMO :jsfiddle
感谢您的任何信息!
答案 0 :(得分:4)
在嵌套元素上,您需要停止事件冒泡:
$('#div2').on('contextmenu', function(e) {
e.stopPropagation();
$('#log').append('<p>div2 triggered contextmenu!</p>');
});
答案 1 :(得分:1)
$('#div1,#div2').on('contextmenu', function (e) {
e.stopPropagation();
$('#log').append('<p>' + e.target.id + ' triggered contextmenu!</p>');
});
答案 2 :(得分:1)
您需要阻止事件传播,请尝试以下代码:
$('#div1').on('contextmenu', function(e) {
if(!e.isDefaultPrevented()){
$('#log').append('<p>div1 triggered contextmenu!</p>');
e.preventDefault();
}
});
$('#div2').on('contextmenu', function(e) {
if(!e.isDefaultPrevented()){
$('#log').append('<p>div2 triggered contextmenu!</p>');
e.preventDefault();
}
});