2010-07-06 67 views
3

我想在单击文档时隐藏div,但当用户点击文档或单击其中的链接或按钮时,我不想隐藏该div。此外,我有一些链接里面的div集,以防止点击操作(返回false;)并发送ajax请求。当单击文档时隐藏文档,除非单击文档时

我想:

$(document).click(function(e) { 
     $('#bubble').hide(); 
}); 

$('#bubble').click(function(e) { 
    return false; 
}); 

它工作正常,但#bubble下的链接和按钮不起作用。

+0

为什么不工作? http://jsbin.com/uwane – galambalazs 2010-07-06 14:21:30

回答

5

代替return false;使用event.stopPropagation()这样的:

$('#bubble').click(function(e) { 
    e.stopPropagation(); 
}); 

这从像你想向上冒泡到document停止click事件,但不会杀死的事件在它的轨道像return false;会死。所有你需要做的这种情况是防止default bubbling behavior,这是只有 :) :)