HTML DOM Element setAttributeNode() metod

Definition och användning

setAttributeNode() Metod för att lägga till det specificerade attributnoden till elementet och returnera ett Attribute-objekt.

Om den specificerade attributet redan finns, kommer denna metod att ersätta det.

Alternativ:

Använd setAttribute() metod Enklare.

Se också:

Referenshandbok:

getAttributeNode() metod

removeAttributeNode() metod

createAttribute() metod

getAttribute() metod

setAttribute() metod

hasAttribute() metod

Attribute value-attribut

HTML DOM Attribute-objekt

Lär dig:

HTML-attribut

Skillnaden mellan setAttribute() och setAttributeNode()

setAttribute() Metod för att ersätta attributvärdet.

setAttributeNode() Metod för att ersätta Attribute-objektet.

Innan du lägger till attributet till elementet måste du skapa ett Attr-objekt och ställa in Attr-värdet.

Resultatet kommer att vara detsamma.

Exempel

Exempel 1

Ställ in noden för class-attributet för den första <h1>-elementet:

const attr = document.createAttribute("class");
attr.value = "democlass";
const h1 = document.getElementsByTagName("H1")[0];
h1.setAttributeNode(attr);

Prova själv

Innan att ställa in:

Hello World

Efter att ha ställt in:

Hello World

Exempel 2

Ställ in href-egenskapsnoden för <a>-elementet:

const attr = document.createAttribute("href");
attr.value = "";
const anchor = document.getElementById("myAnchor");
anchor.setAttributeNode(attr);

Prova själv

Innan att ställa in:

Besök codew3c.com

Efter att ha ställt in:

Besök codew3c.com

Syntaks

element.setAttributeNode(newAttr)

Parameter

Parameter Beskrivning
newAttr Obligatorisk. Representerar att lägga till egenskapen, eller att ändra värdet för egenskapen, Attr-noden.

Returvärde

Typ Beskrivning
Objekt

Repräsenterar Attr-objektet för den ersatta egenskapsnoden.

Om ingen egenskap har ersatts, är det null.

Kasta

Denna metod kommer att kasta ett DOMException-undantag som innehåller följande kod:

Undantag Beskrivning
INUSE_ATTRIBUTE_ERR newAttr Det är redan en del av egenskapsuppsättningen för en annan elementnod.
NO_MODIFICATION_ALLOWED_ERR Det aktuella elementet är skrivskyddat och tillåter inte att dess egenskaper ändras.
WRONG_DOCUMENT_ERR newAttr egenskapen ownerDocument är annorlunda än det element som ska ställas in.

Webbläsarstöd

element.setAttributeNode() är en DOM Level 1 (1998)-funktion.

Alla webbläsare stöder det fullt ut:

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Stöd 9-11 Stöd Stöd Stöd Stöd