Range: surroundContents() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.
The surroundContents()
method of the Range
interface surrounds the selected content by a provided node. It extracts the contents of the range, replaces the children of newParent
with the extracted contents, inserts newParent
at the location of the extracted contents, and makes the range select newParent
.
An exception is thrown if the range partially contains any non-Text
node. The range must only contain text nodes and completely selected nodes.
Syntax
js
surroundContents(newParent)
Parameters
Return value
None (undefined
).
Examples
HTML
html
<span class="header-text">Put this in a headline</span>
JavaScript
js
const range = document.createRange();
const newParent = document.createElement("h1");
range.selectNode(document.querySelector(".header-text"));
range.surroundContents(newParent);
Result
Specifications
Specification |
---|
DOM # dom-range-surroundcontents |