ul
とli
要素で作成されたサブメニューでmwnuを閉じるjavascriptコードがあります。
サブメニューが開き、ページの他の領域またはメニューの外側をクリックした場合、そのサブメニューを閉じる必要があります。
このスクリプトはFirefoxとChromeでのみ機能し、IEでは機能しません。
JSコード:
$(function(){
$(".item").on("click focusout", function(){
$(".test").toggleClass("no-display");
});
$(document).on("click", function(e){
if(!$(".test").hasClass("no-display") && $(e.originalEvent.target).closest(".mega").length === 0) {
$(".test").addClass("no-display");
}
});
});
そしてHTMLコード:
<ul class="mega">
<li>Item1</li>
<li class='item'>Item2
<ul class='test no-display'>
<li>SubItem1</li>
<li>SubItem2</li>
</ul>
</li>
<li>Item3</li>
</ul>
さらに良いことに、私はJsfiddleを提供して、問題の実際を確認します