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 相关文章推荐
在网页中屏蔽快捷键
Sep 06 Javascript
JS应用之禁止抓屏、复制、打印
Feb 21 Javascript
JavaScript CSS修改学习第二章 样式
Feb 19 Javascript
js获取单选框或复选框值及操作
Dec 18 Javascript
jQuery动态地获取系统时间实现代码
May 24 Javascript
javascript面向对象特性代码实例
Jun 12 Javascript
document.forms用法示例介绍
Jun 26 Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
May 30 Javascript
Javascript类型系统之undefined和null浅析
Jul 13 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
Jun 15 Javascript
mpvue中配置vuex并持久化到本地Storage图文教程解析
Mar 15 Javascript
jQuery实现滑动星星评分效果(每日分享)
Nov 13 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
理解PHP5中static和const关键字的区别
2007/03/19 PHP
php 用sock技术发送邮件的函数
2007/07/21 PHP
php读取30天之内的根据算法排序的代码
2008/04/06 PHP
PHP大批量数据操作时临时调整内存与执行时间的方法
2011/04/20 PHP
Symfony2学习笔记之系统路由详解
2016/03/17 PHP
JS网页播放声音实现代码兼容各种浏览器
2013/09/22 Javascript
js中typeof的用法汇总
2013/12/12 Javascript
JS调试必备的5个debug技巧
2014/03/07 Javascript
jQuery超酷平面式时钟效果代码分享
2020/03/30 Javascript
js判断复选框是否选中及选中个数的实现代码
2016/05/30 Javascript
javascript特效实现——当前时间和倒计时效果的简单实例
2016/07/20 Javascript
javascript添加前置0(补零)的几种方法
2017/01/05 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
layer.open弹层查看缩略图的原图,自适应大小的实例
2019/09/05 Javascript
原生js实现无缝轮播图
2020/01/11 Javascript
[01:12]快闪回顾DOTA2亚洲邀请赛(DAC) 静候2018新征程开启
2018/03/11 DOTA
[01:04:35]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第一场
2018/04/04 DOTA
[37:29]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.19
2020/11/19 DOTA
Python3实现的腾讯微博自动发帖小工具
2013/11/11 Python
python实现带验证码网站的自动登陆实现代码
2015/01/12 Python
Python中的装饰器用法详解
2015/01/14 Python
Python简单日志处理类分享
2015/02/14 Python
Python二分查找详解
2015/09/13 Python
python机器学习之决策树分类详解
2017/12/20 Python
django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决
2018/07/13 Python
python模拟鼠标点击和键盘输入的操作
2019/08/04 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
Python面向对象编程基础实例分析
2020/01/17 Python
pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)
2020/04/15 Python
使用Nibabel库对nii格式图像的读写操作
2020/07/01 Python
python使用ctypes库调用DLL动态链接库
2020/10/22 Python
AMAVII眼镜官网:时尚和设计师太阳镜
2019/05/05 全球购物
波兰在线体育用品商店:Hop-Sport.pl
2019/07/23 全球购物
优秀中专生推荐信
2013/11/17 职场文书
python基于tkinter制作无损音乐下载工具
2021/03/29 Python
分析mysql中一条SQL查询语句是如何执行的
2021/06/21 MySQL