javascript div关闭问题

时间:2010-08-25 19:49:16

标签: javascript jquery

我有一个div,当用户点击链接时会打开。并且div排序悬停在链接上(它是一个更多的信息框/ div),div有一个链接和文本。现在我想要的是当用户cliks在div之外它关闭/消失。但是我想让div里面的链接工作。 atm关于那个closin的javascript是这样的:

$('html').click( function() {
   $('#moreInfo').hide();                                           
});

但问题是,当用户点击#moreInfo内部的链接时,链接不起作用,div才会关闭(它应该从该链接转到不同的页面,而不是关闭div)。

3 个答案:

答案 0 :(得分:2)

你可以这样做:

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

click的{​​{1}}处理程序上使用event.stopPropagation(),来自的点击次数不会bubble up到您所拥有的位置处理程序关闭它...这是当前正在发生的事情。

答案 1 :(得分:0)

如果我理解正确,你不想隐藏DIV,你想从DOM树中删除它。

如果是这种情况,请尝试:

$('#moreInfo').remove();

请记住保留对该项目的引用,以便您可以在需要时重新添加它。

答案 2 :(得分:0)

我建议你在DIV的右上角放置一个结束X(就像一个窗口)......在其他情况下,你可以处理你div中“特殊”元素的模糊事件。

希望有所帮助,