Partage
  • Partager sur Facebook
  • Partager sur Twitter

recuperer offset de plusieurs balises

    29 septembre 2016 à 9:24:37

    Bonjour, 
     
    J'ai actuellement une page de balises <article> contenant chacune une balise <header> et une <img>. 
    Cette page est généré en php : 
    je rempli un tableau de la maniere suivante 

    Code :
    1. $html_article_tab[] = "<article><header>$header</header><img src=\"$lien\" id=\"$id\"></article>"


    et j'affiche ensuite cela avec une boucle. 
     
    Je voudrai afficher en bas de chaque article, ses coordonnées et l'id de son image (avec jquery) ; j'ai donc fait : 

    Code :
    1. $(document).ready(function(){
    2. var x = $('article').offset.left;
    3. var y = $('article').offset.top;
    4. var id = $('article').children('img').attr('id');
    5. $('article').append("position x = " + x + " position y = " + y + " et id = " + id);


     
    Seulement voila : tous mes articles s'affichent correctement mais les coordonnes et l'id qui s'affichent sont les mêmes pour tous les articles, soit ceux du premier article affiché. 
    Du coup je bloque un peu... 
    Merci d'avance du coup de main !

    • Partager sur Facebook
    • Partager sur Twitter
      29 septembre 2016 à 9:35:18

      Salut,

      Vu que tu t'attaques à plusieurs éléments par leurs tags names (le problème aurait été le même avec des class) il faut que tu utilises $(this) et each() :

      $('article').each(function(){ //Comme pour une boucle PHP tu vas maintenant pouvoir traiter chaque élément indépendemment
          var x = $(this).offset.left;
          var y = $(this).offset.top;
          var id = $(this).children('img').attr('id');
          $(this).append("position x = " + x + " position y = " + y + " et id = " + id);
      });


      En fait, là ton script fonctionne mais comme tu ne spécifie par à quel article tu t'attaques, ton script s'arrête à la première occurrence trouvée dans ton code HTML

      • Partager sur Facebook
      • Partager sur Twitter
      Quand tu ne sais pas, Google reste ton meilleur ami ! ;)
        29 septembre 2016 à 9:46:32

        Super ça fonctionne !
        J'avais bien en tête de faire une sorte de boucle mais je ne savais pas comment m'y prendre.

        Merci! 

        • Partager sur Facebook
        • Partager sur Twitter
          29 septembre 2016 à 10:58:42

          Pas de soucis ! Pense juste à mettre le sujet en résolu, ca peut aider d'autres personnes ;)
          • Partager sur Facebook
          • Partager sur Twitter
          Quand tu ne sais pas, Google reste ton meilleur ami ! ;)

          recuperer offset de plusieurs balises

          × 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