我有以下HTML代码:
<a href="#language">English</a>
<div class="popup" id="language">
Portuguese | English | French
</div>
我想在点击链接时打开/关闭div。
但我还需要以下行为:
1 - 当我点击链接外的某个地方时,弹出窗口应隐藏。
2 - 当我打开Popup时,我希望任何当前打开的弹出窗口关闭;
我尝试了以下内容:
$('a').click(function (event) {
event.preventDefault();
$($(this).attr('href')).toggle();
});
$("html").click(function (event) {
$("div.popup").hide();
});
但HTML部分使我的代码停止工作。
以下是一个示例:http://codepen.io/mdmoura/pen/sAeEJ
我该如何解决?
谢谢你, 米格尔
答案 0 :(得分:2)
问题是事件传播
$('a').click(function (event) {
$($(this).attr('href')).toggle();
return false;
});
$("html").click(function (event) {
$("div.popup").hide();
});
演示:Fiddle