Element.setAttribute()
element.setAttribute(name, value)
Donne à l’attribut la valeur indiquée (convertie en texte), ou l’ajoute s’il manque.
L’exemple travaille avec le code HTML placé au-dessus du code JavaScript.
Paramètres
- name – nom de l’attribut.
- value – nouvelle valeur (toujours enregistrée comme texte).
Valeur de retour
undefined.
Exemples
<img id="photo" src="/small.jpg" alt="">
const photo = document.getElementById('photo');
photo.setAttribute('alt', 'Le Mont-Saint-Michel en hiver');
photo.setAttribute('loading', 'lazy');
photo.setAttribute('width', 640);
photo.setAttribute('data-large', '/large.jpg');
console.log(photo.outerHTML);
photo.setAttribute('aria-hidden', false);
console.log(typeof photo.getAttribute('width'), photo.getAttribute('aria-hidden'));
Résultat :
<img id="photo" src="/small.jpg" alt="Le Mont-Saint-Michel en hiver" loading="lazy" width="640" data-large="/large.jpg"> string false
Points d’attention
- La valeur
falseest enregistrée comme texte « false » – les attributs booléens (disabled,hidden) se désactivent en les supprimant : removeAttribute() ou toggleAttribute(). - N’ajoutez pas de gestionnaire d’événement avec
setAttribute('onclick', …), utilisez addEventListener(). - Vérifiez un attribut issu d’un texte saisi par l’utilisateur dans
hrefousrc(adressejavascript:).
Prise en charge par les navigateurs
Baseline – largement disponible : fonctionne dans tous les navigateurs courants, et depuis longtemps (au plus tard depuis 2015). Depuis la version : Chrome 1, Firefox 1, Safari 1 ; absent de Node.js (API du navigateur). État : octobre 2026 (MDN browser-compat-data).
Voir aussi :
Element.getAttribute()
Element.removeAttribute()
Element.toggleAttribute()