Element : méthode setAttributeNodeNS()
Baseline
Large disponibilité
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La méthode setAttributeNodeNS() de l'interface Element ajoute un nouveau nœud Attr d'un espace de noms à l'élément courant.
Si vous n'avez pas besoin de travailler sur le nœud d'attribut (par exemple en le clonant depuis un autre élément) avant de l'ajouter, vous pouvez utiliser la méthode setAttributeNS() à la place.
Si vous manipulez des documents HTML et n'avez pas besoin d'utiliser d'espace de noms, vous pouvez utiliser la méthode setAttribute() à la place.
Syntaxe
setAttributeNodeNS(attributeNode)
Paramètre
attributeNode-
Le nœud
Attrà ajouter à l'élément.
Valeur de retour
Le nœud d'attribut remplacé, le cas échéant, retourné par cette fonction.
Exemples
// <div id="un" xmlns:myNS="http://www.mozilla.org/ns/specialspace"
// myNS:special-align="utterleft">un</div>
// <div id="deux">deux</div>
const myns = "http://www.mozilla.org/ns/specialspace";
const d1 = document.getElementById("un");
const d2 = document.getElementById("deux");
const a = d1.getAttributeNodeNS(myns, "special-align");
d2.setAttributeNodeNS(a.cloneNode(true));
alert(d2.attributes[1].value); // returns: `utterleft'
Notes
Si l'attribut défini existe déjà sur l'élément, cet attribut est remplacé par le nouveau et l'ancien est retourné.
Notez que si vous essayez de définir sans cloner le nœud, vous pouvez voir l'erreur NS_ERROR_DOM_INUSE_ATTRIBUTE_ERR « L'attribut est déjà utilisé », car le DOM exige le clonage pour que l'objet Attr puisse être réutilisé (contrairement aux autres nœuds qui peuvent être déplacés).
Spécifications
| Spécification |
|---|
| DOM> # dom-element-setattributenodens> |
Compatibilité des navigateurs
Voir aussi
- La méthode
Document.createAttribute() - La méthode
Document.createAttributeNS() - La méthode
Element.getAttributeNodeNS()