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 相关文章推荐
dwz 如何去掉ajaxloading具体代码
May 22 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
Jan 07 Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
Nov 18 Javascript
基于jquery实现百度新闻导航菜单滑动动画
Mar 15 Javascript
Bootstrap+jfinal实现省市级联下拉菜单
May 30 Javascript
jQuery新窗口打开外链接
Jul 21 Javascript
js 文字超出长度用省略号代替,鼠标悬停并以悬浮框显示实例
Dec 06 Javascript
浅谈React深度编程之受控组件与非受控组件
Dec 26 Javascript
详解Vue-axios 设置请求头问题
Dec 06 Javascript
详解javascript replace高级用法
Feb 17 Javascript
node.js中module模块的功能理解与用法实例分析
Feb 14 Javascript
js实现限定范围拖拽的示例
Oct 26 Javascript
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
php+mysql分页代码详解
2008/03/27 PHP
php 求质素(素数) 的实现代码
2011/04/12 PHP
PHP执行批量mysql语句的解决方法
2013/05/02 PHP
php查看请求头信息获取远程图片大小的方法分享
2013/12/25 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
PHP实现发送微博消息功能完整示例
2019/12/04 PHP
ThinkPHP5.1验证码功能实现的示例代码
2020/06/08 PHP
用Jquery实现多级下拉框无刷新的联动
2010/12/22 Javascript
jQuery修改CSS伪元素属性的方法
2014/07/30 Javascript
jQuery实现仿路边灯箱广告图片轮播效果
2015/04/15 Javascript
js淡入淡出焦点图幻灯片效果代码分享
2015/09/08 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
JS控制FileUpload的上传文件类型实例代码
2016/10/07 Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
2017/08/31 Javascript
JS写谷歌浏览器chrome的外挂实例
2018/01/11 Javascript
重学 JS:为啥 await 不能用在 forEach 中详解
2019/04/15 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
JavaScript变量Dom对象的所有属性
2020/04/30 Javascript
[54:26]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第一场 12.10
2020/12/12 DOTA
[01:36:17]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第一场 1月31日
2021/03/11 DOTA
详谈python中冒号与逗号的区别
2018/04/18 Python
在Windows中设置Python环境变量的实例讲解
2018/04/28 Python
python清除字符串前后空格函数的方法
2018/10/21 Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
2019/07/31 Python
简单易懂Pytorch实战实例VGG深度网络
2019/08/27 Python
Python 实现黑客帝国中的字符雨的示例代码
2020/02/20 Python
Python如何对XML 解析
2020/06/28 Python
详解Python 循环嵌套
2020/07/09 Python
李维斯德国官方网上商店:Levi’s德国
2016/09/10 全球购物
村官学习十八大感想
2014/01/15 职场文书
党员干部形式主义个人整改措施
2014/09/17 职场文书
2015年“七七卢沟桥事变”纪念活动总结
2015/03/24 职场文书
Python OpenCV 彩色与灰度图像的转换实现
2021/06/05 Python
MySQL 逻辑备份 into outfile
2022/05/15 MySQL