【问题标题】:"document.createElement" Performance“document.createElement”性能
【发布时间】:2014-11-19 23:23:29
【问题描述】:

我想在弹出窗口中创建许多行来使用 for 循环显示我的数据,我使用文本字符串来创建和附加 div ,但是我发现 document.createElement 是高性能的,并使用了提高性能 20% 的方法,但由于我填充了 1000 行,document.createElement 创建元素所需的时间非常高。有没有办法通过一次创建元素并在大量实例中重用它来提高性能,对此的任何建议将不胜感激

【问题讨论】:

标签: javascript jquery performance dom createelement


【解决方案1】:

创建元素后,您可以使用Element.cloneNode() 复制它。它与document.createElement() 花费相同的时间,但有一个优势:如果您在元素上设置了多个属性或childNodes/innerHTML,您也可以通过调用Element.cloneNode(true) 来复制它们。

大部分时间都在 DOM 插入新创建的元素,因此每个新元素的插入都很慢。更快的方法是创建一个documentFragment,将所有新元素附加到您需要的结构中,然后将完整的片段添加到 DOM。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2017-03-19
  • 1970-01-01
  • 2018-04-18
  • 2011-03-15
  • 2010-09-21
  • 2015-02-22
  • 2016-10-17
  • 2011-08-13
相关资源
最近更新 更多