Element: replaceWith() method
The Element.replaceWith() method replaces this
Element in the children list of its parent with a set of
Node or string objects. String
objects are inserted as equivalent Text nodes.
Syntax
js
replaceWith(param1)
replaceWith(param1, param2)
replaceWith(param1, param2, /* … ,*/ paramN)
Parameters
param1, …,paramN-
A set of
Nodeor string objects to replace.
Return value
None (undefined).
Exceptions
HierarchyRequestErrorDOMException-
Thrown when the node cannot be inserted at the specified point in the hierarchy.
Examples
Using replaceWith()
js
const div = document.createElement("div");
const p = document.createElement("p");
div.appendChild(p);
const span = document.createElement("span");
p.replaceWith(span);
console.log(div.outerHTML);
// "<div><span></span></div>"
replaceWith() is unscopable
The replaceWith() method is not scoped into the with
statement. See Symbol.unscopables for more information.
js
with (node) {
replaceWith("foo");
}
// ReferenceError: replaceWith is not defined
Specifications
| Specification |
|---|
| DOM Standard # ref-for-dom-childnode-replacewith① |
Browser compatibility
BCD tables only load in the browser