上保持狀態退房處理菜單上this網站的右側。它有一個<a>
標籤一套<dt>
標籤和子菜單的<ul>
列表裏面<li>
鏈接。頂級鏈接和sumbmenu鏈接使用rel
屬性組合在一起。遇到問題定製的jQuery菜單
正如你可以看到子滑下當您單擊頂級鏈接。我想要做的是在頁面加載之間保持狀態,以便如果子菜單中的任何鏈接被點擊,它將保持打開狀態。我正在嘗試使用rel屬性來執行此操作。
這裏是我的代碼,到目前爲止,我得到一個有點困惑與邏輯:
function initMenu() {
$('.menu ul:not(.active)').hide();
var checkCookie = $.cookie("nav-item");
if (checkCookie != "") {
$('.menu').each(function() {
var state = $(this).find('a:first-child').attr('rel');
if (state == checkCookie) {
alert(state);
$(this).next().slideToggle('normal');
}
})
}
$('.menu > a:first-child').click(function(e) {
e.preventDefault();
var navIndex = $(this).attr('rel');
$.cookie("nav-item", navIndex);
$(this).next().slideToggle('normal');
});
}
$(function() {
initMenu();
});
編輯** 我已經改變了代碼的第一部分,這個以嘗試並使用活躍的班級。但是它所做的是打開所有的ul,而不是隻包含與活動類的li的ul。
$('.menu ul:not(.active)').hide();
$('.menu').each(function(){
if ($(this).children(".active")){
$(this).children('ul').slideToggle('normal');
}
});
請在這裏發表您樣品的標記,否則一旦出問題的解決了這個問題不再是利用別人可能共享您的問題。 – 2012-01-11 12:11:18
我沒有看到類「菜單」的任何dom元素 - 你可能想要#menu,但是然後你想要#menu> li> a而不是我認爲 – 2012-01-11 12:16:29
創建一個jsfiddle與所需的CSS,HTML和JS可能會其他用戶更容易嘗試和幫助您。 – 2012-01-11 12:17:01