javascript将DOM节点添加到文档的方法实例分析


Posted in Javascript onAugust 04, 2015

本文实例讲述了javascript将DOM节点添加到文档的方法。分享给大家供大家参考。具体如下:

这里对两种方法进行了比较:第一种:先创建所有节点,再添加到文档方式的运行时长;第二种:先向文档添加一个空容器,然后每创建一个节点,再添加到容器中方式的运行时长,从测试来看,第二种方法优于第一种!

运行效果如下图所示:

javascript将DOM节点添加到文档的方法实例分析

具体代码如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>将DOM节点添加到文档实例</title>
</head>
<script type="text/javascript">
//第一种:先创建所有节点,再添加到文档
function createAdd(count)
{
  var start=new Date();
  var container=document.createElement("div");
  var obj=document.getElementById("main");
  for(var i=0;i<count;i++)
  {
    var node=document.createElement("div");
    node.style.position="absolute";
    node.style.left=(6+parseInt(Math.random()*100))+"px";
    node.style.top=(6+parseInt(Math.random()*100))+"px";
    container.appendChild(node);
  }
  obj.appendChild(container);
  var end=new Date();
  var duration=end-start;
  alert("第一种方式:"+duration+"ms");
}
//第二种:先添加到文档一个空容器,再创建所有接点,并分别添加到容器中
function addCreate(count)
{
  var start=new Date();
  var container=document.createElement("div");
  var obj=document.getElementById("main");
  obj.appendChild(container);
  for(var i=0;i<count;i++)
  {
    var node=document.createElement("div");
    node.style.position="absolute";
    node.style.left=(6+parseInt(Math.random()*100))+"px";
    node.style.top=(6+parseInt(Math.random()*100))+"px";
    container.appendChild(node);  
  }
  var end=new Date();
  var duration=end-start;
  alert("第二种方式:"+duration+"ms");
}
//检测输入的数据是否正确
function checkData()
{
  var number=parseInt(document.getElementById("count").value);
  return number;
}
//调用createAdd()函数
function callCreateAdd()
{
  var count=checkData();
  createAdd(count);
}
//调用addCreate()函数
function callAddCreate()
{
  var count=checkData();
  addCreate(count);
}
</script>
<body>
<h3>将DOM节点添加到文档实例</h3>
<hr style="border:1px solid #000000;" />
请输入一个整数:
<input type="text" id="count" name="count" />
<br />
<input type="button" id="createadd" name="createadd" value="第一种:先创建所有节点,再添加到文档方式的运行时长" onClick="callCreateAdd();" />
<input type="button" id="one" name="one" value="第二种:先向文档添加一个空容器,然后每创建一个节点,再添加到容器中方式的运行时长" onClick="callAddCreate();" />
<br />
<div id="main" style="position:absolute;"></div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
可输入的下拉框
Jun 19 Javascript
硬盘浏览程序,保存成网页格式便可使用
Dec 03 Javascript
jquery attr 设定src中含有&amp;(宏)符号问题的解决方法
Jul 26 Javascript
IE 当eval遇上function的处理
Aug 09 Javascript
用js实现控件的隐藏及style.visibility的使用
Jun 14 Javascript
快速入门Vue
Dec 19 Javascript
用vue封装插件并发布到npm的方法步骤
Oct 18 Javascript
开发Vue树形组件的示例代码
Dec 21 Javascript
vue.js实现标签页切换效果
Jun 07 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 jQuery
vue2之简易的pc端短信验证码的问题及处理方法
Jun 03 Javascript
JavaScript获取URL参数的方法分享
Apr 07 Javascript
JavaScript实现添加及删除事件的方法小结
Aug 04 #Javascript
JS实现转动随机数抽奖特效代码
Apr 16 #Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
Aug 04 #Javascript
jquery控制显示服务器生成的图片流
Aug 04 #Javascript
JavaScript实现LI列表数据绑定的方法
Aug 04 #Javascript
用js编写的简单的计算器代码程序
Aug 04 #Javascript
javascript记住用户名和登录密码(两种方式)
Aug 04 #Javascript
You might like
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
2013/06/18 PHP
PHP中的str_repeat函数在JavaScript中的实现
2013/09/16 PHP
PHP保存带BOM文件的方法
2015/02/12 PHP
PHP经典面试题之设计模式(经常遇到)
2015/10/15 PHP
PHP上传图片到数据库并显示的实例代码
2019/12/20 PHP
脚本吧 - 幻宇工作室用到js,超强推荐base.js
2006/12/23 Javascript
读jQuery之五(取DOM元素)
2011/06/20 Javascript
jQuery对val和atrr(&quot;value&quot;)赋值的区别介绍
2014/09/26 Javascript
jQuery延迟加载图片插件Lazy Load使用指南
2015/03/25 Javascript
使用vue.js编写蓝色拼图小游戏
2017/03/17 Javascript
关于jQuery里prev()的简单操作代码
2017/10/27 jQuery
Parcel 打包示例(React HelloWorld)
2018/01/16 Javascript
代码详解javascript模块加载器
2018/03/04 Javascript
React+Webpack快速上手指南(小结)
2018/08/15 Javascript
nodejs 使用 js 模块的方法实例详解
2018/12/04 NodeJs
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
2020/02/12 Javascript
Openlayers测量距离与面积的实现方法
2020/09/25 Javascript
python多线程操作实例
2014/11/21 Python
python类继承与子类实例初始化用法分析
2015/04/17 Python
详解Python的Django框架中manage命令的使用与扩展
2016/04/11 Python
Python matplotlib画图实例之绘制拥有彩条的图表
2017/12/28 Python
深入浅析python 中的匿名函数
2018/05/21 Python
Python学习笔记之自定义函数用法详解
2019/06/08 Python
python实现的读取网页并分词功能示例
2019/10/29 Python
Python ConfigParser模块的使用示例
2020/10/12 Python
HTML5安全介绍之内容安全策略(CSP)简介
2012/07/10 HTML / CSS
HTML5头部标签的一些常用信息小结
2016/10/23 HTML / CSS
.net软件工程师面试题
2015/03/31 面试题
挖掘机司机岗位职责
2014/02/12 职场文书
成语的广告词
2014/03/19 职场文书
毕业生自荐信如何写
2014/03/24 职场文书
班主任远程培训研修日志
2015/11/13 职场文书
大学生就业指导课心得体会
2016/01/15 职场文书
2019销售早会主持词
2019/06/27 职场文书
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis
SQL实现LeetCode(180.连续的数字)
2021/08/04 MySQL