在DOM中添加/删除多个元素的最快方法

时间:2011-09-05 11:00:40

标签: javascript dom

编辑:它不是“最快的DOM插入”的副本,因为它也包含事件侦听器变量。无论如何,我会编辑这个问题。

如果有人已经发现,我会知道一些事情。

我想知道哪种是在javascript中添加元素并与ie6 +,chrome10 +,firefox2 +兼容的最快方法。

最快的技术:

  1. 添加单个元素
  2. 添加100个元素
  3. 添加1个元素或1000个元素的任何时间曲线

  4. 与上述相同,但用于删除元素

  5. 添加/更改/删除内联样式属性

  6. 添加mousedown / mouseup / mouseover

  7. 等事件监听器
  8. 添加/删除某些标签会更快吗?例如:添加/删除<div><p>的速度更快? (在添加模式中:我认为更快<p>因为它只有1个字母对3个字母,可能因为div是一个容器。我不知道,这就是为什么我要问:D)

    1. 删除元素,以某种方式保存到js中,然后重新添加它并使事件侦听器在删除元素之前保持原样
  9. 这是一个很大的问题,所以如果您只知道一些问题,您可以随时分享您所知道的内容;)

    谢谢,谢谢!

2 个答案:

答案 0 :(得分:2)

1将父元素的innerHTML值设置为包含新元素的HTML的字符串 2与1.相同 4将父元素上的innerHTML值设置为空字符串 7.1调用Node.removeChild(),保存返回的Node对象,然后将节点传递给Node.appendChild()

答案 1 :(得分:0)

Google / SO是你的朋友:

例如问题1/2,请参阅Fastest DOM insertion

我想,你可以搜索很多。

在google / SO旁边搜索效果比较的另一个好地方是使用jsperf:http://jsperf.com/browsehttp://jsperf.com/popular。我很确定那里有很多你的问题。如果您有一些未回答的问题,您也可以在主页http://jsperf.com/中测试它们。