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 相关文章推荐
不用MOUSEMOVE也能滑动啊
May 23 Javascript
js实现鼠标移到链接文字弹出一个提示层的方法
May 11 Javascript
JS获取月份最后天数、最大天数与某日周数的方法
Dec 08 Javascript
javascript性能优化之DOM交互操作实例分析
Dec 12 Javascript
js removeChild 方法深入理解
Aug 16 Javascript
JS之相等操作符详解
Sep 13 Javascript
JQuery控制DIV的选取实现方法
Sep 18 Javascript
深入理解Node.js中的进程管理
Mar 13 Javascript
babel7.x和webpack4.x配置vue项目的方法步骤
May 12 Javascript
Vuejs中的watch实例详解(监听者)
Jan 05 Javascript
React实现todolist功能
Dec 28 Javascript
Vue中引入svg图标的两种方式
Jan 14 Vue.js
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
js 表单验证方法(实用)
2009/04/28 Javascript
ko knockoutjs动态属性绑定技巧应用
2012/11/14 Javascript
jQuery中校验时间格式的正则表达式小结
2013/09/22 Javascript
js实现禁止中文输入的方法
2015/01/14 Javascript
jQuery判断数组是否包含了指定的元素
2015/03/10 Javascript
JavaScript实现Flash炫光波动特效
2015/05/14 Javascript
D3.js中data(), enter() 和 exit()的问题详解
2015/08/17 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
angularjs $http实现form表单提交示例
2017/06/09 Javascript
Vue-resource拦截器判断token失效跳转的实例
2017/10/27 Javascript
node.js部署之启动后台运行forever的方法
2018/05/23 Javascript
详解Vue.js在页面加载时执行某个方法
2018/11/20 Javascript
vue-router传参用法详解
2019/01/19 Javascript
Element中的Cascader(级联列表)动态加载省\市\区数据的方法
2019/03/27 Javascript
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
Python制作CSDN免积分下载器
2015/03/10 Python
Python实现栈的方法
2015/05/26 Python
Python数据分析之获取双色球历史信息的方法示例
2018/02/03 Python
Python Pandas找到缺失值的位置方法
2018/04/12 Python
python和mysql交互操作实例详解【基于pymysql库】
2019/06/04 Python
Python实现的ftp服务器功能详解【附源码下载】
2019/06/26 Python
解决os.path.isdir() 判断文件夹却返回false的问题
2019/11/29 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
python实现超级马里奥
2020/03/18 Python
Python startswith()和endswith() 方法原理解析
2020/04/28 Python
Python经纬度坐标转换为距离及角度的实现
2020/11/01 Python
matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
2021/01/05 Python
基于PyTorch中view的用法说明
2021/03/03 Python
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
friso美素佳儿官方海外旗舰店:荷兰原产原罐
2017/07/03 全球购物
美国女性奢华品牌精品店:INTERMIX
2017/10/12 全球购物
荷兰领先的百货商店:De Bijenkorf
2018/10/17 全球购物
PHP面试题大全
2015/10/16 面试题
某公司Java工程师面试题笔试题
2016/03/27 面试题
水果超市创业计划书
2014/01/27 职场文书
机关干部四风问题自我剖析及整改措施
2014/10/26 职场文书