このスクリプトを使用して、展開されたメニュー レベルと折りたたまれたメニュー レベルに関する情報を保存しています。
$('#menu li:has(ul) a').click(function() {
$(this).next().toggle();
if ($(this).next().is(':visible')) {
$.cookie($(this).text(), 'expanded');
}
if ($(this).next().is(':hidden')) {
$.cookie($(this).text(), 'collapsed');
}
});
$('.item').each(function() {
var verticalNav = $.cookie( $(this).children('a').text() );
if (verticalNav == 'expanded') {
$(this).find('ul').show();
}
});
2 レベル メニューで正常に動作します。例えば:
<ul>
<li>item 1
<li>item 1.1</li>
</li>
しかし、3番目のレベルを置くと:
<ul>
<li>item 1
<li>item 1.1
<li>item 1.1.1</li>
</li>
</li>
レベル 2 だけクリックすると、ページを更新するとレベル 3 が表示されます。