ARNO*

Geek dilettante habitant une belle et grande propriété sur la Côte d’améthyste

  • Pour connaître avec #Javascript quelle est l’image réellement utilisée dans un <picture> doté de <source> et/ou de srcset : c’est dans la valeur currentSrc de l’<img>.

    $("#logo img").on("load", function() {
            console.log($(this)[0].currentSrc );
    });

    Du coup, puisque c’est le currentSrc de la balise <img> qui contient ça, ça fonctionne tout aussi bien avec un PictureFill (pour les navigateurs qui ne comprennent pas <picture><source>).

    #responsive

    • Je viens de tomber sur un brouteur qui répond avec un undefined (Safari 9.0.3, pas le genre vieux clou, mais qui justement ne gère pas <picture> et oblige à passer un picturefill).

      Du coup, aller chercher le src :

              var url = $(this)[0].currentSrc;
              if (typeof url === "undefined") {
                      url = $(this)[0].src;
              }