[英]jQuery: If else on click for mobile menu
目前我在 WP 中的汉堡菜单有问题。 截至目前,它在加载时立即打开。 它应该仅在单击时打开。
HTML
<div id="et-top-navigation" data-height="66" data-fixed-height="55" style="padding-left: 180px;">
<nav id="top-menu-nav"></nav>
<div id="et_mobile_nav_menu">
<div class="mobile_nav closed">
<span class="mobile_menu_bar mobile_menu_bar_toggle">::before</span>
<ul id="mobile_menu" class="et_mobile_menu">*all li is here**</ul>
</div>
</div>
</div>
和我的 jQuery
jQuery("span.mobile_menu_bar.mobile_menu_bar_toggle").click(function(){
var $this = jQuery(this);
if($this.data('clicked')){
jQuery("ul#mobile_menu").css({"display": "flex", "flex-direction": "column"});
jQuery("ul#mobile_menu > li").css("order", "2");
jQuery("ul#mobile_menu > .early-access-1").css("order", "1");
jQuery("ul#mobile_menu > .early-access-2").css("order", "1");
} else {
jQuery("#mobile_menu").css("display", "none");
jQuery("#mobile_menu").css("important");
}
});
js
//disable menu with js
//use only if you keep opening on your own. but it's probably something else that is conflicting
jQuery("#mobile_menu").css("display", "none");
jQuery("#mobile_menu").css("important");
//correct code
jQuery("span.mobile_menu_bar.mobile_menu_bar_toggle").click(function(){
var $this = jQuery(this);
console.log($this.data('clicked'));
if( typeof $this.data('clicked') === 'undefined' ){
$this.data('clicked', true);
}else{
$this.removeData('clicked');
}
if($this.data('clicked')){
jQuery("ul#mobile_menu").css({"display": "flex", "flex-direction": "column"});
jQuery("ul#mobile_menu > li").css("order", "2");
jQuery("ul#mobile_menu > .early-access-1").css("order", "1");
jQuery("ul#mobile_menu > .early-access-2").css("order", "1");
} else {
jQuery("#mobile_menu").css("display", "none");
jQuery("#mobile_menu").css("important");
}
});
css 默认
#mobile_menu{
display: none;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.