Si vous voulez que l'image se charge et affiche une image particulière, utilisez alors .src
pour charger l'URL de cette image.
Si vous voulez qu'un élément de métadonnées (sur n'importe quelle balise) puisse contenir une URL, utilisez alors data-src
ou tout data-xxx
que vous voulez sélectionner.
Documentation MDN sur les attributs data-xxxx : https://developer.mozilla.org/en-US/docs/DOM/element.dataset
Exemple de src
sur une balise d'image où l'image charge le JPEG pour vous et l'affiche :
<img id="myImage" src="http://mydomain.com/foo.jpg">
<script>
var imageUrl = document.getElementById("myImage").src;
</script>
Exemple de 'data-src' sur une balise non-image où l'image n'est pas encore chargée - c'est juste un élément de métadonnées sur la balise div :
<div id="myDiv" data-src="http://mydomain.com/foo.jpg">
<script>
// in all browsers
var imageUrl = document.getElementById("myDiv").getAttribute("data-src");
// or in modern browsers
var imageUrl = document.getElementById("myDiv").dataset.src;
</script>
Exemple de data-src
sur une balise d'image utilisée comme emplacement pour stocker l'URL d'une autre image :
<img id="myImage" src="http://mydomain.com/foo.jpg" data-src="http://mydomain.com/foo.jpg">
<script>
var item = document.getElementById("myImage");
// switch the image to the URL specified in data-src
item.src = item.dataset.src;
</script>