IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Amélioration menu


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Amélioration menu
    Bonjour,

    Je viens de mettre en ligne mon site internet :
    http://www.imaginascience.com/accueil.php



    On vient de me faire remarquer qu'il serait bon que je revoie le fonctionnement de mon menu latéral GAUCHE.

    En effet, il s'agit d'un SWAP menu. J'avais trouvé le code il y a longtemps et je maîtrise peu le Javascript.

    Si un visiteur clique sur une de mes catégories, le script ouvre la catégorie voulue et une liste de liens apparait. Jusque là tout va bien.

    Ce que j'aimerais, c'est qu'une fois ce lien cliqué, et que l'on se trouve sur la page souhaitée, le script fasse en sorte que le menu reste dans l'état donné de la page d'avant.

    Pour l'instant, il se réinitialise.

    J'ai pensé à 2 possibilités : soit l'utilisation de Cookie pour noter la position de la page précédente, soit j'indique à la main le menu selon la page (c'est moi qui lui indique la catégorie à ouvrir selon la page).

    L'idéal est que l'on me donne un script de remplacement et je l'adapterai à mes besoins.

    Je me tiens à votre dispo (si vous voulez le script par ex) et je remercie par avance les âmes charitables.
    [/img]

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    t'as pris une poomme sur le tête ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Oui mais au contraire de Newton plus intéressé par la découverte de la gravitation universelle, moi je l'ai schcroumé !

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    pour ton souci passe une paire de variables en paramètre du lien ou utilise une variable navigateur ?..
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Euh...

    J'ai dit que je suis pas un pro du Javascript. Le PHP mieux. Je peux passer une variable en GET mais bof bof.

    Dans l'idéal, je suis sur que quelqu'un peut me donner un script qui a déjà pris ce prob en compte non ?

  6. #6
    Membre à l'essai
    Inscrit en
    Décembre 2004
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Essaye ceci:

    Dans chaque href, rajoute en paramètre l'id de la li principale.
    Par exemple,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href=
                      "/articles/sciencesphysiques/mecanique/resonance/resonance.php#haut"
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href=
                      "/articles/sciencesphysiques/mecanique/resonance/resonance.php?myli=p1#haut"
    , ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="/boutique/accueil_boutique.php#haut"
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="/boutique/accueil_boutique.php?myli=p4#haut"
    Tu récupères le param dans chaque page:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php 
    if (isset($_GET["myli"])) 
    $toopen=$_GET["myli"]; 
    else 
    $toopen="p1";
    ?>
    Ensuite, pour chaque li principale tu remplaces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <li id="p1" class="open">
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <li id="p1" class="<?php if ($toopen=='p1') echo 'open'; else echo 'closed'; ?>">
    (pour la li p2 tu remplaces p1 par p2 etc..).

    Petite solution rapide. Par contre, ça ne marche que si la personne passe par le menu pour atteindre une page.

    Edit: Je viens de voir que tu avais mis à jour et que tu voulais pas de php, je laisse quand même le code au cas où

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Top merci d'avoir passé du temps à trouver une réponse.

    C'est la solution un peu lourde que je "sentais" mais c'est vrai que comme elle est en PHP, elle est super claire.

    Je pense finalement que c'est d'ailleurs la meilleure solution car je ne connais pas assez le Javascript.

    Si quelqu'un a mieux, qu'il n'hésites pas à me donner le tuyau.

    Merci encore MomoZeAsticot !

Discussions similaires

  1. fonction création menu à améliorer
    Par steve3000 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 04/06/2009, 11h05
  2. Améliorer un menu fait avec JQuery avec du javascript
    Par Alplob dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 15/04/2009, 18h59
  3. améliorer Mon Menu
    Par amazircool dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 08/03/2007, 07h57
  4. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 17h03
  5. Menu en GL
    Par Kaïn dans le forum OpenGL
    Réponses: 2
    Dernier message: 06/05/2002, 11h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo