Partage
  • Partager sur Facebook
  • Partager sur Twitter

[jQuery] manipuler la largeur si ...

Sujet résolu
    14 décembre 2010 à 18:09:19

    hello

    je souhaite faire la chose suivante
    si la largeur des images dont l'attribut "src" commence par xxx et la largeur est > à celle de la fenetre ... je met l'attribut width à cette valeur:
    avec ce bout de code .


    var sizedWindowWidth=$(window).width(); // on capture la largeur de la fenetre.
    
    $("img[src^='http://xxx/site/news_picture_users']").each(function(){   
       $(this).attr('width',function(){ 
          if(this >sizedWindowWidth)	return sizedWindowWidth;
          });
    });
    


    .. ca veut pas : :(
    un coup de main est bienvenue
    merci
    • Partager sur Facebook
    • Partager sur Twitter
      15 décembre 2010 à 1:10:59

      if($(this).attr('width')>sizedWindowWidth) return sizedWindowWidth;
      • Partager sur Facebook
      • Partager sur Twitter
        15 décembre 2010 à 11:31:07

        Merci Golmote
        La Doc mentionne bien que c'est this et non $(this) qui est requis quand on met un fonction dans un appel à attr()

        function(index, attr)A function returning the value to set. 
        this is the current element. 
        Receives the index position of the element in the set and the old attribute value as arguments.


        Les exemples donnés utilisent aussi "this"
        • Partager sur Facebook
        • Partager sur Twitter
          15 décembre 2010 à 11:59:34

          As-tu testé mon code ?

          "The current element" peut très bien signifier signifie l'élément DOM...
          • Partager sur Facebook
          • Partager sur Twitter
            15 décembre 2010 à 13:23:32

            bien sûr Golmote
            j'ai testé et c'est pas OK :(
            • Partager sur Facebook
            • Partager sur Twitter
              15 décembre 2010 à 13:50:24

              Chez moi ça fonctionne...

              <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
              <script type="text/javascript">
              $(function() {
                var sizedWindowWidth = $(window).width();
                $('img').attr('width',function() {
                  if($(this).attr('width')>sizedWindowWidth) return sizedWindowWidth;
                });
              });
              </script>
              <img src="http://wlppr.com/wallpapers/2010/11/26/Wheat.1920x1200.jpg" />
              
              • Partager sur Facebook
              • Partager sur Twitter
                15 décembre 2010 à 14:20:44

                Merci Golmote
                ca marche en effet.
                • Partager sur Facebook
                • Partager sur Twitter

                [jQuery] manipuler la largeur si ...

                × 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