所以,我试图在模糊时关闭表格,例如Facebook评论。问题是,我有一个:
$(window).click(function(){ $('.comment_form').hide(); });
$('.comment_form').click(function(){ return false; });
但是,通过添加return false
,它可以正常工作,当我实际使用它时,它会在点击时取消提交按钮。
我认为这会在逻辑上起作用:
$('*:not(.comment_form,.comment_form *)').click(function(eve)
{
$('.comment_form').hide();
});
但是,不幸的是,它没有,我认为是因为当我点击时,让我们说.comment_form
我实际上点击了body
,div
,{{1} } ...等所以它实际上多次隐藏它。
我的工作终于来了
div
然而,我不太确定我喜欢这个,这就是我要问的原因。这将触发此点击事件每次点击。
有人有任何建议吗?
答案 0 :(得分:1)
您的解决方案是正确的,但将事件附加到document
,而不是所有元素(*
)可能更合理:
$(document).click(function(eve) {
if (!$(eve.target).is('.comment_form, .comment_form *')) {
$('.comment_form').hide();
}
});