我已经阅读了很多这样的答案,但这些答案都不是我需要的。我有一个div
按钮,点击该按钮会显示一个名为div
的{{1}}。我希望能够在我点击时关闭它。
下面的代码会这样做,但#settingswindow
#settingswindow
在我点击它时也会关闭,这是一种不良影响。
div
感谢您的帮助。
答案 0 :(得分:2)
为$('#settingswindow')创建一个函数。单击(),然后使用event.stopPropagation() http://api.jquery.com/event.stoppropagation/阻止事件冒泡。
答案 1 :(得分:2)
添加以下行:
$("#settingswindow").click(function(e){
e.stopPropagation();
});
答案 2 :(得分:1)
你应该做的是你应该将DIV的tabindex属性设置为-1 这样焦点事件就适用于你的div:
<div id="settingswindow" tabindex="-1"></div>
显示后将焦点设置为div。
然后使用focusin
或focusout
jquery事件来解决您的问题。
就像聚焦事件发生时一样,你可以隐藏你的div:
$('#settingswindow').focusout(function() {
$('#settingswindow').hide();
});
这是一个工作样本: http://jsfiddle.net/XVTuL/