【发布时间】:2012-09-14 19:18:40
【问题描述】:
我刚刚注意到一些不寻常的事情。这就是我想要完成的:
我希望在单击链接时显示 div
我希望当我单击文档中的其他位置时 div 消失
我不希望它在单击 div 本身时消失
类似这样的:
JS:
(function() {
var box = $('#box');
$(document).on('click', function() {
if (box.css('display') == 'block') {
box.css('display', 'none');
}
});
$('#start').on('click', function(e) {
box.css({
'text': 'Box',
'position': 'absolute',
'top': '50px',
'left': '0',
'background': '#EEE',
'border': '1px solid #555',
'width': '200px',
'height': '50px',
'display': 'block'
});
e.stopPropagation();
});
box.on('click', function(e) {
e.stopPropagation();
});
})();
那个小提琴工作得很好,但是当我在 Firefox (15.0.1) 中测试它时,如果你右键单击 div,它就会消失,这不是我正在寻找的行为。似乎 stopPropagation() 适用于单击,但不适用于 Firefox 中的右键单击。 Chrome 会阻止右键单击传播到文档。
我该如何解决?
谢谢
【问题讨论】:
标签: javascript firefox right-click stoppropagation