0
私は、ウィンドウの残りの部分でメニュークラス.tab-nav-menuの外にあるクリックを検出し、同様の閉じるアニメーションでメニューを閉じるイベントを追加したいと思います。外のクリックでナビゲーションを閉じる方法は?
// Menu
jQuery(function($) {
$('.header-menu-toggle').on('click', function(e){
e.preventDefault();
$('.tab-nav-menu >ul >li').animate({
opacity: 0
}, 200).animate({
bottom: '-25px'
}, 50);
if($('.tab-nav-menu').hasClass('tab-invisible')){
$('.tab-nav-menu').css({'right':'-1em'});
$('.tab-nav-menu').removeClass('tab-invisible').addClass('tab-visible');
$(this).find('.burg').addClass('activeBurg');
}
else{
$('.tab-nav-menu').css({'right':'-100%'});
$('.tab-nav-menu').removeClass('tab-visible').addClass('tab-invisible');
$(this).find('.burg').removeClass('activeBurg');
}
var delay = 600;
var duration = 400;
if($(".header-navigation-menu").hasClass("strip-header-menu")){
delay = 250;
}
$('.tab-nav-menu >ul >li').each(function(){
$(this).delay(delay).animate({
opacity: 1,
bottom: 0,
}, duration);
delay += 150;
});
})
});
ご協力いただきありがとうござい
これは、「
」タグにクリックハンドラを追加し、メニュー階層からメニューおよびサブメニュー項目からクラスを削除する機能を呼び出すことで行います。 '.animate()'などは使用しません。表示/非表示のためにストレートCSSを使用し、メニュー項目のクラスを調整するだけです。 –あなたはまだアニメーションを使用して上記のアドバイスに従うことができます。メニュー内の関連クラスを見つけて処理し、それに応じてアニメーション化するボディクリックハンドラを作成してください – robisrob
[jqueryで閉じるにはメニューをクリックしてください] //stackoverflow.com/questions/2868582/click-outside-menu-to-close-in-jquery) – AmericanUmlaut