【发布时间】:2011-07-07 03:06:44
【问题描述】:
基本上,我正在尝试实现一个登录,例如新推特的登录。当您单击登录时,会弹出一个带有字段的 div。现在,当我单击 div 之外的任何位置(div 失去焦点)时,div 应该消失。
我已经尝试过How to blur the div element?中提到的技术
代码如下
$("body").click(function(evt) {
if (evt.target.id !== 'loginDialog') {
$("#loginDialog").hide();
}
});
问题在于即使我在子 div 中单击带有 loginDialog 的某个位置,target.id 也不等于 loginDialog。
所以上面是一个很好的前进方向,但解决方案是不完整的。
实现这一目标的最佳方法是什么?
【问题讨论】:
-
我有预感需要一些事件冒泡处理代码,但之前从未这样做过