我有一个div,当用户点击链接时会打开。并且div排序悬停在链接上(它是一个更多的信息框/ div),div有一个链接和文本。现在我想要的是当用户cliks在div之外它关闭/消失。但是我想让div里面的链接工作。 atm关于那个closin的javascript是这样的:
$('html').click( function() {
$('#moreInfo').hide();
});
但问题是,当用户点击#moreInfo内部的链接时,链接不起作用,div才会关闭(它应该从该链接转到不同的页面,而不是关闭div)。
答案 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中“特殊”元素的模糊事件。
希望有所帮助,