我刚刚注意到一些不寻常的事情。这就是我想要完成的:
我希望在单击链接时显示 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 会阻止右键单击传播到文档。
我该如何解决?
谢谢