Bonjour,

J'ai suivie un tuto pour faire un menu accordéon. Tout fonctionne bien sauf que j'aimerais que après le click sur un sous-menu ou un sous-sous-menu il reste ouvert après la rechargement de la page. Comment je pourrais faire? Merci d'avance!

HTML:
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<nav id="nav">
    <ul>   
	<li class="current"><a href="#">Menu1</a></li>                                                 
        <li class="toggleSousMenu"><span>Menu2</span>
		<ul class="sousMenu">
			<li><a href="#" title="">Sous-menu 2.1</a></li>
                    <li><a href="#" title="">Sous-menu 2.2</a></li>
		</ul>
	</li>
	<li class="toggleSousMenu"><span>Menu3</span>
		<ul class="sousMenu">
                        <li><a href="#" title="">Sous-menu 3.1</a></li>
			<li><a href="#" title="">Sous-menu 3.2</a></li>
			<li><a href="#" title="">Sous-menu 3.3</a></li>
			<li><a href="#" title="">Sous-menu 3.4</a></li>
		</ul>
	</li>
        <li class="toggleSousMenu"><span>Menu4</span>
		<ul class="sousMenu">
			<li><a href="#" title="">Sous-menu 4.1</a></li>
			<li class="toggleSousMenu"><span>Sous-menu 4.2</span>
				<ul class="sousMenu">
					<li><a href="#" title="">Sous-sous menu 4.1.1</a></li>
					<li><a href="#" title="">Sous-sous menu 4.1.2 </a></li>
					<li><a href="#" title="">Sous-sous menu 4.1.3</a></li>
					<li><a href="#" title="">Sous-sous menu 4.1.4 </a></li>
				</ul>
			</li>
		</ul>
	</li>
	<li><a href="#">Menu5</a></li>
	<li><a href="#">Menu6</a></li>
</ul>				
</nav>

CSS:
Code css : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#nav {
  list-style: none;
}
 
#nav ul {
  background: #65597d;
  color: #fff;
  border: 1px solid #65597d;
  margin-bottom: 1px;
  list-style: none;
}
 
#menu_left ul a {
  display: block;
  color: #fff;
  font: 1em "Trebuchet MS",Arial,sans-serif;
  line-height: 1em;
  text-align: center;
  text-decoration: none;
  padding: 4px 0;
}
 
#nav ul a:hover,#nav ul a:active{
  background:#65597d;
  text-decoration: underline ;
}
 
#nav ul a:focus{
  background:#000000;
  text-decoration: underline ;
}
 
#nav .sousMenu {
  font-size: .8em;
  background-color: #65597d;
  font-size: .9em;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #65597d;
}
#nav li.sousMenu a {
  background: none;
  padding: 3px 20px;
}
 
#nav a, #nav span {
  display: block;
  padding: 4px 10px;
  color: #fff;
  text-decoration: none;
  background-color: #000000;
}
 
#nav .toggleSousMenu a, #nav .toggleSousMenu span {
  background-color: #000000;
}
#nav .open a, #nav .open span {
  background-color: #000000;
}

Javascript:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$(document).ready( function () {
    // On cache les sous-menus :
    $("#nav ul.sousMenu").hide();
    // On sélectionne tous les items de liste portant la classe "toggleSubMenu"
 
    // et on remplace l'élément span qu'ils contiennent par un lien :
    $("#nav li.toggleSousMenu span").each( function () {
        // On stocke le contenu du span :
        var TexteSpan = $(this).text();
        $(this).replaceWith('<a href="" title="Afficher le sous-menu">' + TexteSpan + '<\/a>') ;
    } ) ;
 
    // On modifie l'évènement "click" sur les liens dans les items de liste
    // qui portent la classe "toggleSubMenu" :
    $("#nav li.toggleSousMenu > a").click( function () {
        // Si le sous-menu était déjà ouvert, on le referme :
        if ($(this).next("ul.sousMenu:visible").length != 0) {
            $(this).next("ul.sousMenu").slideUp("normal");
        }
        // Si le sous-menu est caché, on ferme les autres et on l'affiche :
        else {
            $("#nav ul.sousMenu").slideUp("normal");
            $(this).next("ul.sousMenu").slideDown("normal");
        }
        // On empêche le navigateur de suivre le lien :
        return false;
    });    
 
 
} ) ;