只是做了一個快速測試,點擊jquery元素外部,但有一些問題。關閉點擊外部元素 - 我在這裏做錯了什麼?
我試圖刪除單擊外部元素的類。
問題似乎是'文檔'處理程序與跨度同時激活,因此無法正常工作。
我需要它,所以它在類已經被添加後有效。
乾杯
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>animation</title>
<link rel="stylesheet" href="css/normalize.css" media="screen" title="no title">
<link rel="stylesheet" href="css/main.css" media="screen" title="no title">
</head>
<body>
<ul>
<li class="top-list"><span>Item</span>
<ul class="sub-top">
<li class="sub-list">Item 1</li>
<li class="sub-list">Item 2</li>
<li class="sub-list">Item 3</li>
<li class="sub-list">Item 4</li>
</ul>
</li>
</ul>
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
<script type="text/javascript">
$("span").on("click", function(){
$(".sub-list").toggleClass("show-menu");
});
$(document).on('click', function(event) {
if (!$(event.target).closest('.sub-list').length) {
$(".sub-list").removeClass("show-menu");
}
});
</script>
</body>
</html>
.sub-list或.sub-top?看起來應該是次頂 –