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 :

menu déroulant dynamique


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 117
    Par défaut menu déroulant dynamique
    Bonjour à tous,
    Je souhaiterais inclure un menu déroulant sur mon site PHP/MySQL. On m'a dit que c'était assez facile à faire avec Javascript, mais comme je rame, et ben je galère pas mal...

    Alors je vais expliquer en détail. Le menu est créé dynamiquement et pourra changer car il dépend des rubriques qu'insérera l'administrateur du site que je suis en train de concevoir.
    Ce menu est conçu de rubriques et de sous rubriques, qui créé un menu du type de celui-ci:

    TITRE1
    SOUSTITRE1
    SOUSTITRE2
    SOUSTITRE3
    TITRE2
    SOUSTITRE1
    SOUSTITRE2
    TITRE3
    TITRE4
    SOUSTITRE1
    SOUSTITRE2

    Si ça peut aider, je vous montre le code du fichier menu.html


    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
    <div id="menuGeneral">
    			<dl id="menu">
    			<THELIA_MENU_RUBRIQUES type="RUBRIQUE" parent="0" profondeur="1" classement="manuel">
    				<dt><a href="#URL">#TITRE</a></dt>
    				<dd class="ssmenu">
    					<ul>
    					<THELIA_BLOC_SOUS_MENU type="RUBRIQUE" parent="#ID">
    					<THELIA_SOUS_MENU_RUBRIQUE type="RUBRIQUE" id="#ID" courante="0">
    						<li><a href="#URL">#TITRE</a></li>
    					</THELIA_SOUS_MENU_RUBRIQUE>	
    					<THELIA_SOUS_MENU_RUBRIQUE_SELECTION type="RUBRIQUE" id="#ID" courante="1">
    						<li><a href="#URL" class="selected">#TITRE</a></li>
    					</THELIA_SOUS_MENU_RUBRIQUE_SELECTION>
    					</THELIA_BLOC_SOUS_MENU>
    						<li class="invisibleW3C">&nbsp;</li>	
    					</ul>
    				</dd>
    				</THELIA_MENU_RUBRIQUES>
    				<THELIA_MENU_CONTENU type="CONTENU" parent="0" profondeur="1" classement="manuel">
    				<dt><a href="#URL">#TITRE</a></dt>
    			</THELIA_MENU_CONTENU>
    			</dl>
    		</div>
    Voila le but est d'obtenir un menu du genre:

    TITRE1
    TITRE2
    TITRE3
    TITRE4

    et, par exemple qu'au passage de la souris du TITRE2, on obtienne:

    TITRE1
    TITRE2
    SOUSTITRE1
    SOUSTITRE2
    TITRE3
    TITRE4

    Voilà, je remercie par avance ceux qui voudront bien me filer un coup de main...

    Ajor

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    une petite recherche t'aurais amené ici :

    http://www.developpez.net/forums/sho...d.php?t=270288 ( a adapter ... )

    ou encore ici :

    http://css.developpez.com/galerie/

    toute une galerie de menu en css / javascript ^^

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 117
    Par défaut
    merci beaucoup...

    Désolé de ne pas avoir utilisé la fonction recherche

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 117
    Par défaut
    Je viens de regarder les liens proposé mais il me semble que ce sont tous des menus statiques.
    Est-ce qu'il a déjà été proposé des menus de ce genre du type dynamique comme le mien?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 117
    Par défaut
    Je suis vraiment débutant en Javascript, donc j'ai besoin d'un petit peu d'aide pour utiliser ces fonctions.
    Si j'ai bien compris, je place le code suivant au début de ma page:


    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    <script type="text/javascript"> 				
    <!--
    /******** Debut du script du menu ************/
    var timer = null;
    var objOut = null;
     
    function mouseOut(obj)
    {
       var elmt = document.getElementById(obj.id+"Item");
       elmt.style.display = "none";
     
       document.getElementById(obj.id+"Titre").className="titreMenu itemOut";
     
       //instruction a placer a la fin de la fonction
       timer = null;
    }
     
    function fout(obj)
    {
       objOut = obj;
       if (timer==null)
       {
          timer = setTimeout("mouseOut(objOut)","1000");
       }
    }
     
     
    function fover(obj)
    {
       var elmt;
       clearTimeout(timer);
       timer = null;
     
       elmt = document.getElementById(obj.id+"Item");
       elmt.style.display = "block";
     
       document.getElementById(obj.id+"Titre").className="titreMenu itemOver";
     
       if (objOut!=obj && objOut!=null)
       {
          mouseOut(objOut);
       }
    }
    /******** Fin du script du menu ************/
    //--> 				 				
    </script>

    Puis je place dans le code (copié plus haut) quelque chose comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <div class="menu"id="Menu1"onmouseout="fout(this)"onmouseover="fover(this)"> 				
    <div class="titreMenu itemOut"id="Menu1Titre">Menu 1</div>
     
    <divclass="contenuMenu"id="Menu1Item">
    <divclass="itemOut" onmouseout="this.className='itemOut'" onmouseover="this.className='itemOver'"><ahref="#"class="lienMenu">Sousmenu 11</a></div>
      </div>

    J'ai du mal à savoir comment adapter ce code au miens.
    Mais déjà, est-ce que c'est vraiment faisable?
    Ajor

  6. #6
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    oui c'est faisable :
    http://css.developpez.com/galerie/pr...alderoulant2/#
    le fait que tu es 1 ou 10 menu / sous menu ne change rien ... regarde la source elle est très simple a mettre en place ( juste une modification des balise html à effectuer )

Discussions similaires

  1. Réponses: 10
    Dernier message: 22/03/2007, 08h36
  2. [MySQL] menu déroulant dynamique
    Par heteroclite dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/10/2006, 20h16
  3. menu déroulant dynamique
    Par jojo971 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/06/2006, 14h43
  4. [Conception] Menu déroulant dynamique et administrable
    Par guy2004 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 16/05/2006, 15h37

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