Element: setAttributeNS() 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.

setAttributeNS adds a new attribute or changes the value of an attribute with the given namespace and name.

If you are working with HTML documents and you don't need to specify the requested attribute as being part of a specific namespace, use the setAttribute() method instead.

Syntax

js
setAttributeNS(namespace, name, value)

Parameters

namespace

A string specifying the namespace of the attribute.

name

A string identifying the attribute by its qualified name; that is, a namespace prefix followed by a colon followed by a local name.

value

The desired string value of the new attribute.

Return value

None (undefined).

Examples

js
let d = document.getElementById("d1");
d.setAttributeNS(
  "http://www.mozilla.org/ns/specialspace",
  "spec:align",
  "center",
);

Notes

setAttributeNS is the only method for namespaced attributes which expects the fully qualified name, i.e. "namespace:localname".

Specifications

Specification
DOM
# ref-for-dom-element-setattributens①

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
setAttributeNS

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

See also