javascript - 使用 .appendChild(DocumentFragment) 与 .append(...[DomElement,...])
问题描述
MDN 文档说:
因为所有节点都一次插入到文档中,所以如果单独插入每个插入的节点,只会触发一次重排和渲染,而不是可能触发一次。
所以
const el1 = document.createElement('div');
const el2 = document.createElement('div');
const df = document.createDocumentFragment();
df.appendChild(el1);
df.appendChild(el2);
document.body.appendChild(df);
好于
const el1 = document.createElement('div');
const el2 = document.createElement('div');
document.body.appendChild(el1);
document.body.appendChild(el2);
但是使用append
呢?append
和使用 documentFragment 一样高效吗?
const el1 = document.createElement('div');
const el2 = document.createElement('div');
document.body.append(el1,el2);
解决方案
推荐阅读
- operating-system - 敏感指令和特权指令的区别
- javascript - 如何使用 Selenium 提取对当前网站有影响的可能操作?
- c# - C#:如何从我的文本文件中读取文本以加载到我的收据应用程序中?
- node.js - 如何在将 Angular 应用程序从版本 6 升级到 7 后修复对等依赖警告
- shell - WindowsPower shell 脚本没有按预期工作
- javascript - 将数据分配给 for 中的对象
- ios - 第一次应用 Xcode 10 和 iOS 未运行
- r - 使用管道工和 R 发送 JSON 文件时的变量名称限制(10000 字节)
- kubernetes - 实例化负载均衡器时出错:服务不是 NodePort 类型,目标类型是实例
- python - 将成员添加到列表时出现 Tweepy 错误