Partage
  • Partager sur Facebook
  • Partager sur Twitter

Reconnaitre un lien

[JQuery]

Sujet résolu
    8 mai 2010 à 14:19:25

    Bonjour à tous,

    Je me doute bien que le titre du sujet n'est pas explicite mais bon, je n'ai pas trouvé mieux :o
    Je vous présente le code HTML (jusque là, rien de bien méchant) :

    <div id="navigation">
    
    	<ul class="nav_main">
    		<li><a href="#slide1">Lien 1</a></li>
    		<li><a href="#slide2">Lien 2</a></li>
    		<li><a href="#slide3">Lien 3</a></li>
    		<li><a href="#slide4">Lien 4</a></li>
    	</ul>
    
    </div>
    


    Vous l'aurez compris, ce menu sera incorporé pour la création d'un slide.
    Lorsque le visiteur aura désactive le JS, celui ci aura des liens bêtes et méchants qui le renverront sur le bloc spécifique.
    Maintenant, quand le visiteur active son JS, lorsqu'il clique sur un lien, celui ci doit transmettre l'image à laquelle il est associé.

    Ce que je veux essayer de réalisé avec cet exemple :
    Afin de faciliter l'exemple, je voudrais que quand on clic sur le lien1, une boite de dialogue affiche 1, lien2 affiche 2 etc...

    Dans le cas où nous avions des
    <input type="button" value="1" />
    


    Il suffisait d'afficher la valeur comme ceci (c'est un exemple condensé)
    <input type="button" value="1" onclick="alert(this.value);" />
    



    Mais comment le faire avec les liens cités au début comme exemple.
    Pour commencer je désactive l'attribut href (comme ci dessous) mais ensuite ?

    $('#navigation .nav_main a').removeAttr('href');
    



    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      8 mai 2010 à 14:22:36

      Mettre un return false à la fin du onclick devrait permettre d'éviter que le lien s'active...
      • Partager sur Facebook
      • Partager sur Twitter
        8 mai 2010 à 14:28:17

        Non, c'est pas ca que je voulais faire, mais Merci de ta réponse :)

        En gros, on à la liste des liens, et quand on clique sur le lien, on lui retourne son numéro.
        Lien 1 = Affiche 0 (ou 1)
        Lien 2 = Affiche 1 (ou 2)
        ....



        EDIT


        Je pense que la fonction index() me permet de faire ce que je veux.
        Voici un exemple :
        http://api.jquery.com/index/

        Vous descendez un peu jusqu'à avoir 3 lignes jaunes et c'est cela que je souhaite faire



        Je pense qu'il y a moyen d'adapter à l'exemple que je veux faire.
        Je test, si c'est bon, j'edit ce poste et je le passe en Résolu
        • Partager sur Facebook
        • Partager sur Twitter
          8 mai 2010 à 14:33:15

          Bah c'est moins con que d'enlever le href.
          $('#navigation .nav_main a').onclick(function() {
          	alert(this.href);//tu devrais pouvoir récupérer le n° à parti de l'url
          	return false;
          });
          
          • Partager sur Facebook
          • Partager sur Twitter
            8 mai 2010 à 14:37:53

            Justement, j'avais déjà pensé récupérer le numéro à partir du href mais bon...

            Sinon, ce code la marche également (en adaptant l'exemple du lien)
            $('#navigation .nav_main a').removeAttr('href').bind('click',
             function()
             {
            	alert( $('#navigation .nav_main a').index(this) );
             } );
            


            Peut être pas optimisé, je l'accorde.

            Pour le href, je sais pas, je vais regarder si il n'existe pas une fonction comme getAt(1) afin de prendre uniquement le numéro sans le dièse.
            • Partager sur Facebook
            • Partager sur Twitter
              8 mai 2010 à 14:55:36

              Normalement, c'est lien.hash.
              • Partager sur Facebook
              • Partager sur Twitter

              Reconnaitre un lien

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown