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

jQuery Discussion :

Menu 3 niveaux avec Collapsor


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 3
    Par défaut Menu 3 niveaux avec Collapsor
    Bonjour !

    Je me tourne vers vous car j'essaye désespérément de coder un menu déroulant sur trois niveaux. N'y connaissant pas grand chose en Jquery et autre JS, j'essaye tant bien que mal d'associer des morceaux de code.

    Là j'en suis à l'affichage du menu qui fonctionne de manière basique. Il coulisse et se ferme. Mon problème c'est que je n'arrive pas à intégrer la classe "open_at_load" pour le laisser ouvert sur certaines pages de mon site.

    J'ai tenté de combiner :
    - le menu exemple du plug-in Collapsor

    Je ne trouve pas la solution et sur internet les forums qui parlent de Collapsor sont plutôt rare.

    Si quelqu'un pouvait me sortir de ce mauvais pas ce serait génial.

    Merci de votre aide !

    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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
    <html> 
    <head> 
    <title>Document sans nom</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
     
    <script src="/collapsor/jquery-1.2.6.min.js" type="text/javascript"></script> 
        <script src="/collapsor/jquery.collapsor.js" type="text/javascript"></script> 
     
    <style type="text/css"> 
            #navigation { 
                margin: 0; 
                padding: 0; 
                list-style: none: 
                background: #000; 
                color: #fff; 
                width: 200px; 
                font: 1.2em "Trebuchet MS", sans-serif; 
                } 
            #navigation a, #navigation span { 
                display: block; 
                padding: 4px 10px; 
                color: #fff; 
                text-decoration: none; 
                background: #000 url(menu-item.png) left bottom no-repeat; 
                } 
            #navigation .toggleSubMenu a, #navigation .toggleSubMenu span { 
                background-image: url(menu-item-deroule.png); 
                } 
            #navigation .open a, #navigation .open span { 
                background-image: url(menu-item-enroule.png); 
                } 
            #navigation a:hover, #navigation a:focus, #navigation a:active { 
                text-decoration: underline; 
                } 
            #navigation .subMenu { 
                font-size: .8em; 
                background: #ccc url(subMenu.png) 0 0 repeat-x; 
                font-size: .9em; 
                margin: 0; 
                padding: 0; 
                border-bottom: 1px solid #666; 
                } 
            #navigation ul.subMenu a { 
                background: none; 
                padding: 3px 20px; 
                } 
        </style> 
     
     
    <script type="text/javascript"> 
            $(function(){ 
                $('ul a').collapsor(); 
                $('dl strong').collapsor({sublevelElement:'dl', speed: 1000}); 
            }); 
        </script> 
     
    <script type="text/javascript"> 
        <!-- 
        $(document).ready( function () { 
            // On cache les sous-menus 
            // sauf celui qui porte la classe "open_at_load" : 
            $("ul.subMenu:not('.open_at_load')").hide(); 
            // On selectionne tous les items de liste portant la classe "toggleSubMenu" 
     
            // et on remplace l'element span qu'ils contiennent par un lien : 
            $("li.toggleSubMenu span").each( function () { 
                // On stocke le contenu du span : 
                var TexteSpan = $(this).text(); 
                $(this).replaceWith('<a href="" title="Afficher le sous-menu">' + TexteSpan + '</a>') ; 
            } ) ; 
     
            // On modifie l'evenement "click" sur les liens dans les items de liste 
            // qui portent la classe "toggleSubMenu" : 
            $("li.toggleSubMenu > a").click( function () { 
                // Si le sous-menu etait deja ouvert, on le referme : 
                if ($(this).next("ul.subMenu:visible").length != 0) { 
                    $(this).next("ul.subMenu").slideUp("normal", function () { $(this).parent().removeClass("open") } ); 
                } 
                // 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") } ); 
                } 
                // On empêche le navigateur de suivre le lien : 
                return false; 
            }); 
     
        } ) ; 
        // --> 
        </script> 
     
     
    </head> 
     
    <body> 
     
    <ul id="navigation"> 
                <li class="toggleSubMenu"> 
                    <a href="#menu_1">Menu 1</a> 
                    <ul> 
                        <li> 
                            <a href="#menu_1_1">Menu 1-1</a> 
                        </li> 
                        <li> 
                            <a href="#menu_1_2">Menu 1-2</a> 
                            <ul> 
                                <li> 
                                    <a href="#menu_1_2_1">Menu 1-2-1</a> 
                                </li> 
                                <li> 
                                    <a href="#menu_1_2_2">Menu 1-2-2</a> 
                                </li> 
                            </ul> 
                        </li> 
                    </ul> 
                </li> 
                <li> 
                    <a href="#menu_2">Menu 2</a> 
                </li> 
                <li> 
                    <a href="#menu_3">Menu 3</a> 
                </li> 
            </ul> 
     
     
    </body> 
    </html>

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 3
    Par défaut
    Personne pour me donner un début de réponse ?

    Je sèche carrément et je ne sais même pas si ce que je demande est réalisable...

    merci.

Discussions similaires

  1. Compatibilité menu ul à plusieurs niveaux avec IE7
    Par elcoyotos dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 17/07/2014, 08h40
  2. Compatibilité menu ul à plusieurs niveaux avec IE8
    Par elcoyotos dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 12/04/2014, 11h30
  3. Menu déroulant HTML avec lien pointant vers Disque dur
    Par Irwin dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 14/11/2006, 09h59
  4. Integration de menu HTML/CSS avec PHP
    Par sparrow dans le forum Langage
    Réponses: 7
    Dernier message: 31/01/2006, 02h50

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