我有这个 html/css 代码:
<body>
<!-- BEGIN: HEADER AREA -->
<?php require("snippets/header_area.php"); ?>
<!-- END: HEADER AREA -->
<div id = "presentation_area">
<div id = "submenu_area">
<div id = "sliding_menu_area">
</div>
<div id = "tags">
<div id = "1">
<img src = "lang/el/images/1.png" />
</div>
<div id = "2">
<img src = "lang/el/images/2.png" />
</div>
<div id = "3">
<img src = "lang/el/images/3.png" />
</div>
<div id = "4">
<img src = "lang/el/images/4.png" />
</div>
</div>
</div>
</div>
</body>
我试图在用户单击除#sub_menu_area
。我使用js的以下部分:
$('*').not('#submenu_area').click(function(){
if(slide == "open"){
$('#sliding_menu_area').toggle(effect);
slide = "close";
}
});
不幸的是,孩子们不知何故没有被排除在外,点击它会切换很多次。有谁知道如何正确做吗? :)
EDIT:所以我需要一个 jquery 选择器来正确获取:on click of all elements of body EXCEPT for #submenu_area and its descendants
.
尝试这个:
$(document).click(function(e) {
if ($(e.target).is('#submenu_area, #submenu_area *')) {
return;
}
if(slide == "open"){
$('#sliding_menu_area').toggle(effect);
slide = "close";
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)