zoukankan      html  css  js  c++  java
  • 文档碎片

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

      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>
    【作者】:@挨踢前端
    【出处】:http://www.cnblogs.com/duanhuajian/
    【声明】:所有博文标题后加(share)的表示收集的他人优秀文章,其余的则为原创。欢迎转载,但请在显要位置显示本文链接,并保留本段声明,否则追究法律责任,谢谢!
  • 相关阅读:
    制作一个html中闪动的title 来提示消息
    Unicode与 utf8的互相转换
    程序员找女友的类
    使用php将数组转为XML
    自己动手画一个HTML5的按钮
    浏览器推通知给桌面
    如何使用定时任务
    封装之property,多态,鸭子类型,classmethod与staticmethod
    面向对象
    继承与派生
  • 原文地址:https://www.cnblogs.com/duanhuajian/p/2752093.html
Copyright © 2011-2022 走看看