11496 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'ai deux questions concernant le menu accordéon JQuery.

J'explique le contexte, un ami m'a demandé d'intégrer un menu déroulant dynamique sur son site, et donc immédiatement direction AlsaCréations et suivi du tuto idoine !
http://www.alsacreations.com/tuto/lire/606-Creer-un-menu-accordeon-avec-jQuery.html

Malheureusement, le site a été développé avec ... des tableaux ! Bon j'ai pas envie de reprendre toutes les pages donc j'ai intégré via un include php le contenu du menu pour pouvoir ne le gérer qu'à un endroit Smiley cligne

Maintenant mes deux questions:

- Lorsque j'ouvre le sous menu, j'aimerai que celui-ci ne se referme pas lorsque je clique un de ses items (qui induit un changement de page), j'ai essayé les méthodes d'ergonomie proposées dans le tuto malheureusement je n'y parviens pas, je pense être dans le cas du $_GET['page'] à appliquer, mais j'ai du mal à bien comprendre comment, dois-je faire un test conditionnel de la page en vérifiant si $_GET['page'] = unepagedusousmenu.php pour ensuite lui placer la fonction open_at_load ou non ? Y a t-il un moyen plus simple ?

- Ensuite ma seconde questions, le sous menu peut il ouvrir une page en se développant ?
Concrètement vu ma situation j'ai un tableau ( Smiley bawling ) avec 3 cellules, le menu est en cellule 2 et le contenu des pages en cellule 3, puis-je lorsque je clique sur le lien qui développe le sous menu changer aussi le contenu de la cellule 3 (qui est en fait une page php) ?

Merci de vos réponses !
Modifié par Jeremycou (07 Dec 2009 - 21:58)
Pour la première partie j'ai réussi à m'en sortir en faisant une petite bidouille pas proprette, mais j'appelle une version du script ou le menu est ouvert, via un include php différent des éléments du sous menu par rapport aux éléments qui n'y sont pas Smiley cligne

En revanche, si il était possible de pouvoir ouvrir une page lorsque je clique ca m'arrangerait bien.

Pour info les site en question est http://www.bobbyprod.com/ sur lequel vous pourrez voir le menu.

En gros en cliquant sur la partie projet je souhaiterai, en plus de dérouler le menu, changer la page sur la droite.

Merci de votre coup de main.
Bon ok, je me suis répondu tout seul mais j'ai trouvé la solution à l'ouverture d'une nouvelle page lors du développement du menu Smiley cligne

En fait c'est tout con, j'ai juste ajouté l'ouverture d'une page suite au déroulé du menu, je l'ai inclus dans un timeout afin d'avoir un rendu agréable, qui permet de voir le menu se dérouler correctement (500ms)

Voici le code modifié


// Si le sous-menu est cache, on ferme les autres et on l'affiche :
            else {
                $("ul.subMenu").slideUp("normal", function () { $(this).parent().removeClass("open") } );
                $(this).next("ul.subMenu").slideDown("normal", function () { $(this).parent().addClass("open") } );
                setTimeout('document.location.href = "projets.php";',500);
            }


Je passe le sujet en résolu Smiley biggrin