【发布时间】:2012-01-23 10:01:27
【问题描述】:
一个菜鸟问题。答案可能很简单,但不知何故,我无法弄清楚,需要继续我的项目。
我有一个垂直导航菜单,我有一个悬停时向下滑动。 但我希望菜单在滑下后保持打开状态。 我试过删除最后一行代码,但看起来不太漂亮。
我试图实现 Stu Nicholls method ,但没有让它工作。但这就是我想要的效果。
我的 HTML 菜单是:
<nav id="verticalmenu">
<ul>
<li><a class="slide" href="#">Kalendarium</a>
<ul class="down">
<li><a href="#">Konzerte</a></li>
<li><a href="#">Seminare</a></li>
<li><a href="#">Vortraege</a></li>
</ul>
</li>
<li><a href="#">Projekte</a>
</ul>
还有它的 jquery:
<script type="text/javascript">
(function($){
//cache nav
var nav = $("#verticalmenu");
//add hovers to submenu parents
nav.find("li").each(function() {
if ($(this).find("ul").length > 0) {
//show subnav on hover
$(this).mouseenter(function() {
$(this).find("ul").stop(true, true).slideDown();
});
//hide submenus on exit
$(this).mouseleave(function() {
$(this).find("ul").stop(true, true).slideUp();
});
}
});
})(jQuery);
非常感谢!
【问题讨论】:
-
将鼠标离开更改为单击,它应该提供代码正常工作,悬停时打开,离开时保持打开,单击时折叠这是您追求的功能类型吗?
-
去掉
//hide submenus on exit评论后隐藏的代码。 -
谢谢你们,但结果是一样的——一切都很好,直到我把鼠标移开。然后一切都被打乱了。无论如何,我会进一步浏览网络......谢谢!