我已经设置了一个新页面并添加了jQuery.mmenu。现在,当我加载页面时,默认情况下mmenu已经打开。
mmenu在页面加载时触发并在正文上添加mm-opened
。然后css过渡开始了,mmenu很好地打开了。
但是我希望它只在单击菜单按钮时打开。很奇怪。有人以前听过吗?
jquery的:
$(document).ready(function() {
$("#my-menu").mmenu();
});
HTML:
<body>
<nav id="my-menu">
<ul>
<li><a href="{{item.url }}" class="no-barba">But WHy?</a></li>
</ul>
</nav>
<div>//content</div>
</body>
标记中没有什么特别的东西
答案 0 :(得分:1)
将此添加到您的css样式表并测试它:
#my-menu:not(.mm-menu) {
display: none;
}
答案 1 :(得分:1)
我添加了html(javascript):
window.location.hash =“菜单”;
答案 2 :(得分:1)
Ivan,我赞成您,因为它使我意识到对我来说问题与哈希有关,谢谢:)。
如果您不是使用JS以编程方式打开mmenu,它将指示您将href属性设置为要打开的菜单的选择器的链接。所以我有类似的东西:
<a href="#navbar-menu"> ... </a>
以ID为navbar-menu的菜单选择器为目标。我没有意识到的是,在我所有的JS代码都安装到位之前,我已经单击了此链接,因此当前URL中仍然包含指向菜单选择器的哈希值。例如
https://yourdomain.com/#navbar-menu
我将刷新页面,菜单将自动打开。因为mmenu允许您使用散列来定义菜单的状态-当与菜单选择器相对应的散列位于URL中时打开。
仅供参考,以供遇到相同问题的任何人使用。如果菜单是自动打开的,则删除哈希。
答案 3 :(得分:0)
将“ mm-wrapper_sidebar-closed”类添加到html标签。