Element: setAttributeNode() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The setAttributeNode() method of the Element interface adds a new Attr node to the specified element.

If you don't need to work with the attribute node (such as cloning from another element) before adding it, you can use the setAttribute() method instead.

Syntax

js
setAttributeNode(attribute)

Parameters

attribute

The Attr node to add to the element.

Return value

The replaced attribute node, if any, returned by this function.

Examples

This example copies the align attribute from one element to another.

HTML

html
<div id="one" align="left">one</div>
<div id="two">two</div>

JavaScript

js
let d1 = document.getElementById("one");
let d2 = document.getElementById("two");
let a = d1.getAttributeNode("align");

d2.setAttributeNode(a.cloneNode(true));

// Returns: 'left'
alert(d2.attributes[1].value);

Notes

If the attribute named already exists on the element, that attribute is replaced with the new one and the replaced one is returned.

Specifications

Specification
DOM Standard
# dom-element-setattributenode

Browser compatibility

BCD tables only load in the browser

See also