📜  HTML DOM Range cloneContents() 方法(1)

📅  最后修改于: 2023-12-03 15:01:10.185000             🧑  作者: Mango

HTML DOM Range cloneContents() 方法

cloneContents() 方法用于从 Range 对象的起始点到结束点之间克隆并返回选中的节点的副本,返回的是一个 DocumentFragment 对象。

语法
range.cloneContents()
返回值

cloneContents() 方法返回一个 DocumentFragment 对象,其中包含了选中的节点的副本。

示例
// 创建一个新的 Range 对象
var range = document.createRange();

// 设置 Range 对象的起始点和结束点
range.setStart(element, startOffset);
range.setEnd(element, endOffset);

// 克隆选中的节点
var fragment = range.cloneContents();
示例解释
  • 首先,我们创建了一个新的 Range 对象。
  • 然后,我们使用 setStart() 方法设置 Range 的起始点,将其设置为一个 DOM 元素内的特定位置。element 是一个具体的 DOM 元素,startOffset 是一个整数,表示在元素内部的偏移量。
  • 接着,我们使用 setEnd() 方法设置 Range 的结束点,同样将其设置为一个 DOM 元素内的特定位置。element 是另一个具体的 DOM 元素,endOffset 是另一个整数,表示在元素内部的偏移量。
  • 最后,我们使用 cloneContents() 方法克隆选中的节点,并将结果存储在一个 DocumentFragment 对象中。
注意事项
  • cloneContents() 方法只能用于克隆 Range 对象范围内的节点,不能克隆 Range 之外的节点。
  • 选中的节点副本将保留原始节点的所有属性和子节点。
  • 克隆的节点在文档中并不实际显示,需要通过其他方式插入到文档中才能看到。

参考文档:HTML DOM Range cloneContents() 方法