setAttributeNS
adds a new attribute or changes the value of an attribute with the given namespace and name.
On this page
Element: setAttributeNS() method
Syntax
js
setAttributeNS(namespace, name, value)
Parameters
namespace
is a string specifying the namespace of the attribute.name
is a string identifying the attribute by its qualified name; that is, a namespace prefix followed by a colon followed by a local name.value
is 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
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 |
- |
setAttributeNS
is the only method for namespaced attributes which expects the fully qualified name, i.e. "namespace:localname"
.
Specifications
Specification |
---|
DOM Standard # ref-for-dom-element-setattributens① |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
setAttributeNS |
1 | 12 | 1 | 9 | ≤12.1 | 1 | 4.4 | 18 | 4 | ≤12.1 | 1 | 1.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttributeNS