我用這裏的代碼http://www.designchemical.com/blog/index.php/jquery/jquery-simple-vertical-accordion-menu-with-cookies/,並修改了一下,以適應我的項目,它工作得很好。現在我有兩個障礙,我似乎無法克服。獲取手風琴與餅乾也記住鏈接狀態
1:Cookie可能還存儲了我點擊的最後一個鏈接的狀態嗎?像給它一個類,所以我可以應用另一種背景顏色與CSS?如果我點擊某個孩子的鏈接,我想這樣只有一個鏈接一次處於活動狀態,它將不得不再次刪除該類。
2:當我通過點擊手風琴上方的標誌來刷新頁面時,它保持打開狀態。我很想再次崩潰,就像我第一次訪問該網站時一樣。
棘手的東西。我有一個工作演示here(could'nt讓它上的jsfiddle工作)
這是JS:
$(document).ready(function() {
var checkCookie = $.cookie("nav-item");
if (checkCookie != "") {
$('#nav > li > a:eq('+checkCookie+')').addClass('active').next().show();
}
$('#nav > li > a').click(function(){
var navIndex = $('#nav > li > a').index(this);
$.cookie("nav-item", navIndex);
$('#nav li ul').slideUp();
if ($(this).next().is(":visible")){
$(this).next().slideUp();
} else {
$(this).next().slideToggle();
}
$('#nav li a').removeClass('active');
$(this).addClass('active');
});
});
非常感謝提前!
好吧,沒有看到它已經記住了mein菜單中鏈接的狀態。但它不在子菜單中。當點擊子菜單中的鏈接時,還需要刪除主菜單中的類並將其附加到子菜單。
在JS中刪除該行重置手風琴,正確。但它也使它無法「記住」其狀態,這是我明確需要保留的功能! – bogus 2014-08-28 20:25:02