范围:surroundContents() 方法
Range.surroundContents()
方法将 Range
的内容移到一个新节点中,并将新节点放置在指定范围的开头。
此方法几乎等同于 newNode.appendChild(range.extractContents()); range.insertNode(newNode)
。包围后,range
的边界点包含 newNode
。
但是,如果 Range
使用其中一个边界点来分割非 Text
节点,则会抛出异常。也就是说,与上面的替代方法不同,如果存在部分选定的节点,它们不会被克隆,而是操作将失败。
语法
js
surroundContents(newParent)
参数
返回值
无 (undefined
).
示例
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);
结果
规范
规范 |
---|
DOM 标准 # dom-range-surroundcontents |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。