JavaScript文档碎片操作实例分析


Posted in Javascript onDecember 12, 2015

本文实例分析了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 相关文章推荐
使用Javascript和DOM Interfaces来处理HTML
Oct 09 Javascript
jquery的extend和fn.extend的使用说明
Jan 09 Javascript
jquery css实现邮箱自动补全
Nov 14 Javascript
vue获取dom元素注意事项
Dec 28 Javascript
Angular项目如何升级至Angular6步骤全纪录
Sep 03 Javascript
详解@angular/cli 改变默认启动端口两种方式
Nov 29 Javascript
微信小程序实现点击卡片 翻转效果
Sep 04 Javascript
vue+element搭建后台小总结 el-dropdown下拉功能
Apr 10 Javascript
jQuery实现颜色打字机的完整代码
Mar 19 jQuery
Node.js API详解之 timer模块用法实例分析
May 07 Javascript
vue-quill-editor的使用及个性化定制操作
Aug 04 Javascript
jQuery实现回到顶部效果
Oct 19 jQuery
javascript性能优化之事件委托实例详解
Dec 12 #Javascript
jsonp跨域请求数据实现手机号码查询实例分析
Dec 12 #Javascript
jQuery Validate初步体验(二)
Dec 12 #Javascript
jQuery Validate初步体验(一)
Dec 12 #Javascript
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
Dec 12 #Javascript
jQuery同步提交示例代码
Dec 12 #Javascript
JavaScript匿名函数之模仿块级作用域
Dec 12 #Javascript
You might like
Zend Studio使用技巧两则
2016/04/01 PHP
PHP实现的简单组词算法示例
2018/04/10 PHP
js获取div高度的代码
2008/08/09 Javascript
js 操作符实例代码
2009/10/24 Javascript
两种简单实现菜单高亮显示的JS类代码
2010/06/27 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
JS对img进行操作(换图片/切图/轮换/停止)
2013/04/17 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
学习AngularJs:Directive指令用法(完整版)
2016/04/26 Javascript
纯js实现手风琴效果代码
2020/04/17 Javascript
Angular学习笔记之angular的$filter服务浅析
2016/11/12 Javascript
详解JS异步加载的三种方式
2017/03/07 Javascript
JavaScript队列的应用实例详解【经典数据结构】
2017/04/12 Javascript
React中上传图片到七牛的示例代码
2017/10/10 Javascript
详解Vue.js在页面加载时执行某个方法
2018/11/20 Javascript
el-select 下拉框多选实现全选的实现
2019/08/02 Javascript
Vue循环遍历选项赋值到对应控件的实现方法
2020/06/22 Javascript
Python实现的堆排序算法原理与用法实例分析
2017/11/22 Python
python读取csv文件并把文件放入一个list中的实例讲解
2018/04/27 Python
python调用摄像头显示图像的实例
2018/08/03 Python
Python简单获取二维数组行列数的方法示例
2018/12/21 Python
numpy.linspace函数具体使用详解
2019/05/27 Python
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
2019/09/06 Python
简单瞅瞅Python vars()内置函数的实现
2019/09/27 Python
使用Python实现分别输出每个数组
2019/12/06 Python
python生成word合同的实例方法
2021/01/12 Python
荷兰街头时尚之家:Funkie House
2019/03/18 全球购物
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
Java面试题:为什么要用Java
2012/05/11 面试题
Java程序员面试90题
2013/10/19 面试题
企业治理工作自我评价
2013/09/26 职场文书
自考自我鉴定范文
2013/10/30 职场文书
如何填写个人简历自我评价
2013/12/10 职场文书
培训演讲稿范文
2014/01/12 职场文书
房地产营销活动策划方案
2014/09/15 职场文书
刑事代理授权委托书
2014/09/17 职场文书