jQueryでこんなメニューを作りたいです。
- ボタンをクリックすると、メニュー オプションを含む div が表示されます。
- それ以外の場合は、メニューが非表示になっているときにメニューをクリックします。
パート1は簡単にできますが、パート2は私が苦労しているものです. 次のコードを使用しています。
$("html").click(function(){
menu.hide();
});
ただし、ボタンをクリックするとすぐにメニューが閉じます。
あなたの質問についてはよくわかりませんが、これを試すことができます:
$('body').not('menuelement').click(function() {
menu.hide();
});
このようなものが動作するはずです:
$("html").click(function(e){
if(!$(e.target).is('#menu_options_div') && $(e.target).parents("#menu_options_div").length == 0)
menu.hide();
});
e.target
- 元のクリック要素。オプション/メニューを含むdivではないかどうか、およびその親の1つがそのオプション/メニューdivではないかどうかをテストするだけです