一起学习网 一起学习网


JavaScript文档碎片操作实例分析

网络编程 JavaScript文档碎片操作实例分析 06-22

本文实例分析了JavaScript文档碎片操作方法。分享给大家供大家参考,具体如下:

使用文档碎片在某些情况下可以提高页面效率。

javascript操作dom是一个很耗性能的过程,在某些情况下,不得不进行dom循环操作,我们每次对dom的操作都会触发"重排",这严重影响到能耗,一般通常采取的做法是尽可能的减少dom操作来减少"重排"。

面对循环操作dom的过程,我们选择使用文档碎片(creatDocumentFragment),将需要添加到dom中的内容一次性添加到文档碎片中,然后将文档碎片添加到dom树,这样就可以有效的减少操作dom的次数。

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>文档碎片</title>
<meta name="Keywords" content="">
<meta name="author" content="@my_programmer">
</head>
<body>
<script>
  var temp = document.createDocumentFragment();//文档碎片(当把文档碎片付给某节点时,只是把文档碎片中的子节点付给了某节点,它本身并没有插入到这个节点中)
  for (var i=0; i<100; i++) {
    var test =document.createElement('div');//创建一个节点
    test.innerHTML = 'aaa' + i;//给节点添加内容
    temp.appendChild(test);//把创建的节点插入到temp文档中
  }
  document.body.appendChild(temp);//把temp文档插入到body末尾
</script>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

javascript性能优化之DOM交互操作实例分析
本文实例讲述了javascript性能优化之DOM交互操作技巧。分享给大家供大家参考,具体如下:在javascript各个方面,DOM毫无疑问是最慢的一部分。DOM操作与交

JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)
今天在写一个代码复制功能的时候,发现的这个问题,ie11也不支持document.all,看来以后越来越标准了今天碰到一个奇怪的问题,有一个页面,想指定用I

推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
判断是否IE浏览器用的是window.navigator.userAgent,跟踪这个信息,发现在开发环境,识别为IE10,但访问服务器则识别为IE11,但IE11的userAgent里是没有MSIE标志


编辑:一起学习网

标签:文档,碎片,节点,操作,实例