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 :

Lien dans menu déroulant ne fonctionne pas avec le clic gauche


Sujet :

jQuery

  1. #1
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2014
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Lien dans menu déroulant ne fonctionne pas avec le clic gauche
    Bonjour,

    Vous le constaterez vite, je suis débutant.

    J'essaie de faire un menu déroulant avec des liens. J'ai récupéré un menu déroulant tout fait que j'ai ensuite modifié. J'ai ensuite inséré les liens.

    Comme je le dis dans le sujet, rien ne se passe lorsque je clique gauche dessus. En revanche, lorsque je clique droit suivi de "ouvrir le lien dans une nouvelle fenêtre" ou "ouvrir le lien dans un nouvel onglet".

    Voici le code :
    Code html : 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
    <!DOCTYPE html>
    <html lang="fr">
      <head>
        <meta content="text/html; charset=utf-8" http-equiv="content-type">
        <title>Menu</title>
        <link rel="stylesheet" href="css/styles.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
      </head>
      <body>
        <div id="content">
          <ul class="menu">
            <li class="item1"><a href="#">Accueil</a>
              <ul>
                <li class="subitem1"><a class="sublink" href="Accueil.htm">Page
                    d'accueil</a></li>
                <li class="subitem2"><a class="sublink" href="#">Fonctionnement de
                    la classe</a></li>
                <li class="subitem2"><a target="_blank" class="sublink" href="maths%20utiles.htm">Les
                    maths, ça ne sert à rien</a></li>
              </ul>
            </li>
            <li class="item2"><a href="#">Secondes</a>
              <ul>
                <li class="subitem1"><a class="sublink" href="#">Secondes 10</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a target="_parent" href="lycee/2nde/Cours_seconde.htm">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
                <li class="subitem2"><a class="sublink" href="#">Secondes 11</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a href="#">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
              </ul>
            </li>
            <li class="item3"><a href="#">Premières</a>
              <ul>
                <li class="subitem1"><a class="sublink" href="#">Premières S</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a href="#">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
                <li class="subitem2"><a class="sublink" href="#">Premières STI2D</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a href="#">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
              </ul>
            </li>
            <li class="item4"><a href="#">Terminales</a>
              <ul>
                <li class="subitem1"><a class="sublink" href="#">Terminale S
                    (spécialité)</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a href="#">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
                <li class="subitem2"><a class="sublink" href="#">Terminales STI2D</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a href="#">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
                <li class="subitem3"><a class="sublink" href="#">Terminales STMG</a>
                  <ul>
                    <li class="subsubitem1"><a href="#">Cahier de texte</a></li>
                    <li class="subsubitem2"><a href="#">Cours</a></li>
                    <li class="subsubitem3"><a href="#">Contrôles et corrigés</a></li>
                  </ul>
                </li>
              </ul>
            </li>
            <li class="item5"><a href="#">Contact</a> </li>
            <li class="item6"><a href="#">Liens</a> </li>
          </ul>
        </div>
        <!--initiate accordion-->
        <script type="text/javascript">
    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
    $(function() {
        var menu_ul = $('.menu li > ul'),
        menu_a  = $('.menu li > a');
        menu_ul.hide();
        menu_a.click(function(e) {
            e.preventDefault();
            if(!$(this).hasClass('active')) {
                if ($(this).closest("ul").hasClass("menu")){
            	menu_a.removeClass('active');
    	       	menu_ul.filter(':visible').slideUp('normal');
                }else{
                	$(this).closest("ul").find("a").removeClass('active');
                	$(this).closest("ul").find("ul").filter(':visible').slideUp('normal');
                }
                $(this).addClass('active').next().stop(true,true).slideDown('normal');
            } else {
                $(this).removeClass('active');
                $(this).next().stop(true,true).slideUp('normal');
            }
        });
    });
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    </script>
      </body>
    </html>

    Si je copie uniquement la partie avec le lien dans une page vierge, ça marche.

    Quelqu'un sait-il d'où vient le problème ? J'espère avoir donné suffisamment d'information ... et avoir posté au bon endroit

    Merci par avance.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 657
    Points
    44 657
    Par défaut
    Bonjour,
    dans ton code on trouve
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    menu_a.click(function(e) {
        e.preventDefault();  // annule l'action par défaut
    A lire event.preventDefault()

Discussions similaires

  1. Liste déroulante ne fonctionne pas avec IE8
    Par beegees dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 30/05/2012, 10h25
  2. Réponses: 11
    Dernier message: 06/07/2011, 19h30
  3. menu déroulant ne fonctionne pas
    Par clem62173 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 27/02/2010, 15h55
  4. Menu déroulant ne fonctionnant pas correctement
    Par solorac dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 11/08/2009, 09h45
  5. [HTML 4.0] Menu déroulant qui va pas avec IE
    Par jlb59 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 27/02/2009, 00h43

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