J'ai un menu horizontal css avec un affichage menu/sous-menu qui fonctionne sur le vol stationnaire, mais je voudrais aussi que les options du sous-menu restent actives quand j'ai sélectionné page. Le code ci-dessous montre le sous-menu sur le vol stationnaire, mais disparaît à la sortie de la souris. J'ai de la difficulté à trouver comment faire fonctionner mon code pour que les éléments du sous-menu restent en place? Comment puis-je faire ceci?comment faire pour que le sous-menu css reste sur place quand la sous-page a été sélectionnée
Merci pour votre aide.
Voici le HTML:
<ul id="menu_nav">
<li>
<a href="#" class="button">Home</a>
<span>
<a href="#">Home Link1</a>
<a href="#">Home Link2</a>
<a href="#">Home Link3</a>
</span>
</li>
<li>
<a href="#" class="button">About Us</a>
<span>
<a href="#">About Link1</a>
<a href="#">About Link2</a>
<a href="#">About Link3</a>
</span>
</li>
</ul>
Voici le CSS
ul#menu_nav
{
position:relative;
float:left;
width:790px;
padding:0;
margin:0;
list-style-type:none;
background-color:#000099;
}
ul#menu_nav li {float: left;
margin: 0; padding: 0;
border-right: 1px solid #555;}
ul#menu_nav li a.button
{
float:left;
text-decoration:none;
color:white;
background-color:#000099;
padding:0.2em 0.6em;
border-right:1px solid #CCCCCC;
font-family: Tahoma;
font-size: 11px;
font-style: normal;
font-weight: bold;
position: relative;
height: 21px;
line-height:1.85em;
}
ul#menu_nav li a:hover {
background-color:#F7F7F7;
color:#000099;
border-top:1px solid #CCCCCC;
}
ul#menu_nav li span{
float: left;
padding: 15px 0;
position: absolute;
left: 0; top:25px;
display: none; /*--Hide by default--*/
width: 790px;
background: #F7F7F7;
color: #fff;
}
ul#menu_nav li:hover span { display: block; } /*--Show subnav on hover--*/
ul#menu_nav li span a { display: inline; } /*--Since we declared a link style on the parent list link, we will correct it back to its original state--*/
ul#menu_nav li span a:hover {text-decoration: underline;}
Heres le jquery:
$("ul#menu_nav li").hover(function() { //Hover over event on list item
$(this).css({ 'background' : '#1376c9'}); //Add background color and image on hovered list item
$(this).find("span").show(); //Show the subnav
} , function() { //on hover out...
$(this).css({ 'background' : 'none'}); //Ditch the background
$(this).find("span").hide(); //Hide the subnav
});
Ce code fera tous les sous-menu restent visibles dès que vous passez la souris sur chaque LI. Je pense qu'il ne veut rester que s'ils naviguent vers la page du sous-menu. –
j'ai dit "quelque chose comme" ... ne pas utiliser ce code verbatim. il voulait une idée, alors je lui en ai donné une. il pourrait aussi essayer d'analyser l'URL ou de définir la classe 'keep' sur le serveur – Jason