Salut à tous,
merci pour cet excellent site.
J'utilise un script pour un menu déroulant qui fonctionne très bien, la page html appelle un fichier JS avec ce code dedans:
Le menu lui même dans le php (chargé depuis un fichier externe php) est de la forme:
là par exemple le menu principal enroulé "type de médias" et quand on clique dessus, apparaissent deux sous-menus "publicités télévisées" et "publicités internet", qui envoient vers les pages html correspondantes qui contiennent le contenu afférent.
Seul petit soucis, lorsqu'on clique sur un des liens de sous menu, après le chargement de la page liée, le menu revient en position fermée.
Est-il possible de faire en sorte que le menu reste en position "ouverte" dans laquelle on a cliqué (sans tricher si possible en le forçant à rester ouvert page par page via html) ?
J'ai cru comprendre qu'il fallait utiliser la fonction "php echo ($_SERVER["PHP_SELF"]" mais j'avoue ramer un brin. Si quelqu'un pouvait m'aiguiller.
merci !
Modifié par jpthali (19 Jan 2010 - 00:32)
merci pour cet excellent site.
J'utilise un script pour un menu déroulant qui fonctionne très bien, la page html appelle un fichier JS avec ce code dedans:
function afficheMenu(obj){
var idMenu = obj.id;
var idSousMenu = 'sous' + idMenu;
var sousMenu = document.getElementById(idSousMenu);
/*****************************************************/
/** on cache tous les sous-menus pour n'afficher **/
/** que celui dont le menu correspondant est cliqué **/
/** où 4 correspond au nombre de sous-menus **/
/*****************************************************/
for(var i = 1; i <= 6; i++){
if(document.getElementById('sousmenu' + i) && document.getElementById('sousmenu' + i) != sousMenu){
document.getElementById('sousmenu' + i).style.display = "none";
}
}
if(sousMenu){
//alert(sousMenu.style.display);
if(sousMenu.style.display == "block"){
sousMenu.style.display = "none";
}
else{
sousMenu.style.display = "block";
}
}
}
Le menu lui même dans le php (chargé depuis un fichier externe php) est de la forme:
<div class="menu" id="menu3" onclick="afficheMenu(this)">
<a href="#">type de médias</a>
</div>
<div id="sousmenu3" style="display:none">
<div class="sousmenu">
<a href="nevil_story_accueilB.html">publicités télévisées</a>
</div>
<div class="sousmenu">
<a href="nevil_story_accueilC.html">publicités internet</a>
</div>
</div>
là par exemple le menu principal enroulé "type de médias" et quand on clique dessus, apparaissent deux sous-menus "publicités télévisées" et "publicités internet", qui envoient vers les pages html correspondantes qui contiennent le contenu afférent.
Seul petit soucis, lorsqu'on clique sur un des liens de sous menu, après le chargement de la page liée, le menu revient en position fermée.
Est-il possible de faire en sorte que le menu reste en position "ouverte" dans laquelle on a cliqué (sans tricher si possible en le forçant à rester ouvert page par page via html) ?
J'ai cru comprendre qu'il fallait utiliser la fonction "php echo ($_SERVER["PHP_SELF"]" mais j'avoue ramer un brin. Si quelqu'un pouvait m'aiguiller.
merci !
Modifié par jpthali (19 Jan 2010 - 00:32)