Attr, attribute | NN 6 IE 5 DOM 1
Eine abstrakte Darstellung des Namens-/Wertpaars eines Elementattributs wird im W3C-DOM als Attr-Objekt, in der IE-Terminologie hingegen als attribute-Objekt bezeichnet. Beide Bezeichnungen beziehen sich auf dasselbe Objekt. Attributobjekte werden in beiden Umgebungen mithilfe der document.createAttribute( )-Methode erstellt. Um das Attributobjekt in ein Element einzufügen, wird die Referenz auf das Attributobjekt als Parameter an die setAttributeNode( )-Methode des gewünschten Elements übergeben. Beispiel:
    var newAttr = document.createAttribute("author");
    newAttr.value = "William Shakespeare";
    document.getElementById("hamlet").setAttributeNode(newAttr);
Manche W3C-DOM-Elementmethoden (insbesondere die Methode getAttributeNode( ) geben Attributobjekte zurück, auf deren Eigenschaften wie auf jedes beliebige andere Skriptobjekt zugegriffen werden kann.
Im W3C-DOM-Abstraktmodell erbt das Attr-Objekt alle Eigenschaften und Methoden des Node-Objekts. In IE/Windows vor Version 6 werden einige Node-Objekteigenschaften jedoch nicht an das attribute-Objekt weitergegeben, obwohl sie in Version 5 bereits für Element- und Textnodes implementiert sind.
HTML-Äquivalent
Ein beliebiges Namens-/Wertpaar innerhalb eines Start-Tags.
Objektmodellreferenz
    [window.]document.getElementById("elementID").attributes[i]
    [window.]document.getElementById("elementID").attributes.item(i)
    [window.]document.getElementById("elementID").attributes.getNamedItem[attrName]
Objektspezifische Eigenschaften
expando | name | ownerElement | specified | value
Objektspezifische Methoden
Keine.
Objektspezifische Ereignisbehandlungsroutineneigenschaften
Keine.

expando | NN nicht zutreffend IE 6 DOM nicht zutreffend
| Schreibgeschützt
Gibt den Booleschen Wert true zurück, wenn das Attribut nach dem Einfügen in ein Element nicht zu dessen nativen Attributen gehört. Bei einem Attribut, dass mit document.createAttribute( ) erstellt wurde, ist der Wert dieser Eigenschaft false, bis das Attribut dem Element (mit der setAttributeNode( )-Methode) hinzugefügt und damit die Eigenschaft im Kontext der nativen Elementattribute neu ausgewertet wird.
Beispiel
    var isCustomAttr =
      document.getElementById("book3928").getAttributeNode("author").expando;
Wert
Boolescher Wert: true | false.
Standardwert
false

name | NN 6 IE 5 DOM 1
| Schreibgeschützt
Der Namensteil des Namens-/Wertpaars des Attributs. Diese Eigenschaft ist identisch mit der nodeName-Eigenschaft der Attr-Node. Sie können den Namen eines Attributs nicht in einem Skript ändern, da andere Abhängigkeiten zu Bezugsfehlern im Dokumentbaum führen könnten. Stattdessen müssen Sie das alte Attribut durch ein neu erstelltes Attribut ersetzen, dessen Name als erforderlicher Parameter der document.createAttribute( )-Methode übergeben wird.
Beispiel
    if (myAttr.name == "author") {
        // process author attribute
    }
Wert
Zeichenfolgenwert.
Standardwert
Leere Zeichenfolge, wenngleich beim Erstellen eines neuen Attributs ein Name angegeben werden muss.

ownerElement | NN 6 IE nicht zutreffend DOM 2
| Schreibgeschützt
Verweist auf das Element, das das aktuelle Attributobjekt enthält. Solange einem Element noch kein neu erstelltes Attribut zugewiesen wurde, ist diese Eigenschaft null.
Beispiel
    if (myAttr.ownerElement.tagName == "fred") {
        // process attribute of <fred> element
    }
Wert
Elementnodereferenz.
Standardwert
null

specified | NN 6 IE 5 DOM 1
| Schreibgeschützt
Gibt den Booleschen Wert true zurück, wenn der Wert des Attributs im Quellcode explizit zugewiesen oder in einem Skript eingestellt wurde. Wenn der Browser ein Attribut widerspiegelt, das nicht explizit festgelegt wurde (was bei IE der Fall sein kann), lautet die specified-Eigenschaft dieses Werts false, obwohl das Attribut möglicherweise einen per Dokument-DTD festgelegten Standardwert aufweist. Laut W3C-DOM, Level 2, sollte die specified-Eigenschaft eines neu erstellten Attr-Objekts den Wert true aufweisen, IE ab Version 6 und Netscape ab Version 6.2 behalten jedoch den Wert false bei, bis das Attribut in ein Element eingefügt wird.
Beispiel
    if (myAttr.specified) {
        // process attribute whose value is something other than DTD default
    }
Wert
Boolescher Wert: true | false.
Standardwert
false

value | NN 6 IE 6 DOM 1
| Lesen/Schreiben
Stellt den Wertteil des Namens-/Wertpaars des Attributs bereit. Entspricht der Eigenschaft nodeValue der Attr-Node sowie Daten, auf die über die Methoden getAttribute( ) und setAttribute( ) eines Elements in direkterer Weise zugegriffen wird. Wenn Sie ein neues Attributobjekt erstellen, können Sie seine Werte über die value-Eigenschaft zuweisen, bevor Sie es in das Element einfügen. Attributnodewerte sind immer Zeichenfolgen. Dies gilt auch beim IE, der ansonsten die Verwendung von Zahlenwerten und Booleschen Werten in den entsprechenden Eigenschaften zulässt.
Beispiel
    document.getElementById("hamlet").getAttributeNode("author").value = "Shakespeare";
Wert
Zeichenfolgenwert.
Standardwert
Leere Zeichenfolge, außer bei IE/Windows, der die Zeichenfolge undefined zurückgibt (also nicht etwa einen Wert, dessen Typ den Wert undefined ergibt).