我用jQuery 1.4.3和jQuery UI 1.8.5构建了一个垂直手风琴导航,以支持手风琴小部件的hoverintent版本。
它按预期工作,但是当用户导航到另一个页面时,菜单会折叠。
有什么我忽略的吗?
HTML
<nav class="span3">
<a href="index.html"><img src="img.png" width="250" /></a>
<ul class="wrap" id="mainNav">
<li>
<a href="javascript:void(0);" class="accordionButton">Lorem</a>
<ul class="accordionContent" style="display: none;">
<li>
<a href="javascript:void(0);">Ipsum</a>
</li>
<li class="">
<a href="javascript:void(0);">Dolor</a>
</li>
<li>
<a href="javascript:void(0);">Sit</a>
</li>
</ul>
</li>
<li>
<a href="javascript:void(0);" class="accordionButton accordionButton noChild">Amet</a>
</li>
<li>
<a href="javascript:void(0);" class="accordionButton accordionButton noChild">Consectetur</a>
</li>
<li>
<a href="javascript:void(0);" class="accordionButton accordionButton noChild">Adipiscing</a>
</li>
<li>
<a href="javascript:void(0);" class="accordionButton accordionButton noChild">Elit</a>
</li>
</ul>
</nav>
JavaScript
// verticle menu
function vertAccordHover() {"use strict";
$accButtons.mouseover(function() {
$(this).addClass('hover');
}).mouseout(function() {
$(this).removeClass('hover');
});
}
function vertAccord() {"use strict";
$("#mainNav").accordion({
event : "mouseover",
alwaysOpen : false,
autoHeight : false,
navigation : true,
collapsible : true
});
$('.noChild').unbind('mouseover');
$('#mainNav').accordion('activate', 0);
$('#mainNav').accordion( "option", "navigation", true );
vertAccordHover();
}
答案 0 :(得分:1)
每次进入新页面时,您的手风琴都会崩溃,因为您的浏览器会从头开始重新加载页面。在退出页面之前,您无法存储手风琴的状态。您可以通过在用户的浏览器上存储cookie来实现此目的