Garder un menu jQuery ouvert avec des cookies

J’ai joué avec certains des cookies jQuery que j’ai trouvés sur ce site. Le cookie, je pense, fonctionne, mais mon menu cesse de s’ouvrir complètement.

Je suis très nouveau dans jQuery, donc je ne sais pas trop où je pourrais me tromper.

Je suis simplement allé garder les liens ouverts, par exemple, cliquez sur le lien 1, puis sur un élément de sous-menu. Lorsque la page est chargée, le lien 1 est toujours ouvert.

Quelqu’un s’il vous plaît pointez-moi dans la bonne direction!

Je vous remercie

http://jsfiddle.net/pHgB7/

 jQuery(function ($) { // jQuery code in here can safely use $ $('.nav li') .css({ cursor: "pointer" }) $(".drop") .on('click', function () { $(this).find('ul').toggle(); }) }); 

Voici une petite réponse plus compliquée:

 jQuery(function ($) { // jQuery code in here can safely use $ $('.nav li') .css({ cursor: "pointer" }); $(".drop") .on('click', function () { $(this).toggleClass('open'); $(this).find('ul').toggle(); $.cookie('open_items', 'the_value'); openItems = new Array(); $("li.drop").each(function(index, item) { if ($(item).hasClass('open')) { openItems.push(index); } }); $.cookie('open_items', openItems.join(',')); }); if( $.cookie('open_items') && $.cookie('open_items').length > 0 ) { previouslyOpenItems = $.cookie('open_items'); openItemIndexes = previouslyOpenItems.split(','); $(openItemIndexes).each(function(index, item) { $("li.drop").eq(item).addClass('open').find('ul').toggle(); }); } }); 

Vous aurez besoin d’inclure la bibliothèque jquery.cookie pour cela.

Le violon mis à jour peut être trouvé ici: http://jsfiddle.net/pHgB7/2/