我有这个脚本,它在打开时将汉堡包(菜单图标)更改为X,并在关闭时将标准三行更改为(标准内容)。
X州有一类名为" .active"的导航切换。
我已将body html定义为类.metro,因此当您在菜单打开时单击主屏幕时,它将关闭菜单并摆脱课程" active" ,(返回3行,菜单关闭)......
....有人可以告诉我为什么这段代码不起作用。
$(document).ready(function () {
var state = false;
$(".navbtn").click(function () {
if(!state){
$('#menu').multilevelpushmenu('expand');
state = true;
$('.nav-toggle').addClass('active');
$(this).removeClass('active');
}
else{
$('#menu').multilevelpushmenu('collapse');
state = false;
$('.nav-toggle').removeClass('active');
$(this).addClass('active');
}
});
});
$( '.metro' ).click(function(){
$( '#menu' ).multilevelpushmenu( 'collapse' );
$('.nav-toggle').removeClass('active');
$(this).addClass('active');
});
崩溃和展开的方法定义为http://multi-level-push-menu.make.rs/
汉堡包和按钮的html是......
<div class="navbtn"> <p><a class="nav-toggle" href="#"><span></span></a>Menu</p>
</div>
我知道.metro包含了身体中的所有内容,其中包括菜单本身,这就是为什么它不起作用所以也许它需要包含.metro css背景img更加特定于身体没有包括菜单。
答案 0 :(得分:1)
基本上.metro是html正文涵盖了其中的所有内容包括实际的菜单...这会使代码混淆,因为你基本上说点击身体关闭或菜单,它不知道哪一个所以它基本上没有运行代码....在一个单独的div或类中声明主体空间工作!