HTML DOM Document createDocumentFragment() 方法
定义和用法
createDocumentFragment()
方法创建 offscreen 节点。
offscreen 节点可用于构建可插入任何文档的新文档片段。
createDocumentFragment()
方法还可用于提取文档的部分内容、更改、添加或删除某些内容,并将其插回文档中。
提示
您始终可以直接编辑 HTML 元素。但更好的方法是构建(offscreen)文档片段,并在准备好时将此片段追加到真实(活动)的 DOM。因为您是在准备好片段后插入片段,所以将只需一次重排和一次渲染。
如果您想在循环中追加 HTML 元素项,使用文档片段也可以提高性能。
注意:被追加到文档片段的文档节点将从原始文档中删除。
实例
例子 1
将元素添加到空列表:
const fruits = ["Banana", "Orange", "Mango"]; // 创建文档片段: const dFrag = document.createDocumentFragment(); // 将 li 元素添加到片段中: for (let x in fruits) { const li = document.createElement('li'); li.textContent = fruits[x]; dFrag.appendChild(li); } // 将片段添加到列表中: document.getElementById('myList').appendChild(dFrag);
例子 2
将元素添加到现有列表:
const fruits = ["Banana", "Orange", "Mango"]; // 创建文档片段: const dFrag = document.createDocumentFragment(); // 将 li 元素添加到片段中: for (let x in fruits) { const li = document.createElement('li'); li.textContent = fruits[x]; dFrag.appendChild(li); } // 将片段添加到列表中: document.getElementById('myList').appendChild(dFrag);
语法
document.createDocumentFragment()
参数
无。
返回值
类型 | 描述 |
---|---|
节点 | 新创建的 DocumentFragment 节点,无子节点。 |
浏览器支持
document.createComment()
是 DOM Level 1 (1998) 特性。
所有浏览器都支持它:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
支持 | 9-11 | 支持 | 支持 | 支持 | 支持 |