Element.getAttributeNode()

Returns the specified attribute of the specified element, as an Attr node.

Syntax

var attrNode = element.getAttributeNode(attrName);
  • attrNode is an Attr node for the attribute.
  • attrName is a string containing the name of the attribute.

Example

// html: <div id="top" />
let t = document.getElementById("top");
let idAttr = t.getAttributeNode("id");
alert(idAttr.value == "top")

Notes

When called on an HTML element in a DOM flagged as an HTML document, getAttributeNode lower-cases its argument before proceeding.

The Attr node inherits from Node, but is not considered a part of the document tree. Common Node attributes like parentNode, previousSibling, and nextSibling are null for an Attr node. You can, however, get the element to which the attribute belongs with the ownerElement property.

getAttribute is usually used instead of getAttributeNode to get the value of an element's attribute.

DOM methods dealing with element's attributes:

Not namespace-aware, most commonly used methods Namespace-aware variants (DOM Level 2) DOM Level 1 methods for dealing with Attr nodes directly (seldom used) DOM Level 2 namespace-aware methods for dealing with Attr nodes directly (seldom used)
setAttribute (DOM 1) setAttributeNS setAttributeNode setAttributeNodeNS
getAttribute (DOM 1) getAttributeNS getAttributeNode getAttributeNodeNS
hasAttribute (DOM 2) hasAttributeNS - -
removeAttribute (DOM 1) removeAttributeNS removeAttributeNode -

Specifications

Specification
DOM Standard
# dom-element-getattributenode

Browser compatibility

BCD tables only load in the browser