【问题标题】:How to make the mmenu default expanded如何使菜单默认展开
【发布时间】:2015-01-11 14:03:34
【问题描述】:

我在我的应用程序中使用Jquery mmenu。我的菜单包含子菜单。只有当用户单击主菜单项时,子菜单才会展开。当用户单击菜单按钮时,我希望它默认展开。这怎么可能?我已经初始化如下。

$(document).ready(function () {
console.log('mmenu loading');
$("#menu").mmenu({
    slidingSubmenus: false
});

});

非常感谢任何帮助。

谢谢

【问题讨论】:

  • 如果有多个子菜单,你还想让所有的菜单在同一个主菜单下打开吗?
  • 感谢您的回复。我只有两个级别,菜单和子菜单。无论如何,如果有一个方法可以扩展,即使有两个以上的级别。
  • 您也许可以将您的菜单按钮点击保存到浏览器的会话中,并且每当您再次加载页面时,您可以检查之前是否从会话中点击了菜单按钮(sessionStorage 对象)。 w3schools.com/html/html5_webstorage.asp

标签: javascript jquery menu mmenu


【解决方案1】:

您可以将类(“mm-opened”)赋予具有子菜单的菜单。

<nav id="menu">
            <ul>
                <li><a href="#">Home</a></li>
                //MENU WITH SUBMENU ADD CLASS mm-opened
                <li class="mm-opened">
                    <a href="#about">About us</a>
                    <ul>
                        <li><a href="#about/history">History</a></li>
                        <li> <a href="#about/team">The team</a></li>
                        <li><a href="#about/address">Our address</a></li>
                    </ul>
                </li>
                <li><a href="#contact">Contact</a></li>
            </ul>
</nav>

AND 滑动子菜单为 false。

$("#menu").mmenu({
    slidingSubmenus: false
});

【讨论】:

  • 非常感谢。对于始终打开的菜单,我们可以动态添加它。例如 $("#menu").mmenu({ rollingSubmenus: false }).on("opened.mm", function() { var element = $('#menu li'); element.each(function() { $(this).addClass('mm-opened'); }); })
  • 哦,是的。很高兴它对您有所帮助。
  • 如果子菜单项上的展开/折叠界面(一旦slidingSubmenus 设置为false 就会出现)感觉有点不必要,那么现在将以下内容添加到css 中可能是个好主意:. mm-next {显示:无!重要; }
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-09-29
  • 1970-01-01
  • 1970-01-01
  • 2017-01-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多