第一点:首先appendChild插入节点时返回的值是插入的节点本身,另外必须要找到所要插入的父节点:

 var returnNode = parentNode.appendChild(childNode);
console.log(returnNote===childNode);//true

第二点:appendChild所要插入的新节点如果存在于文档流中,那么此时并不会把心节点复制然后插入到这个父节点下,而是把这个新节点从源文档流中移动到所要插入的父节点下:

 <div id="test">
<div>adscasdjk</div>
<div id="a">adscasdjk</div>
</div>
<script type="text/javascript">
var t = document.getElementById("test");
var a = document.getElementById('a');
//var tt = a.cloneNode(true);
t.appendChild(a);
</script>

这样有js代码和没有js代码的表现是一样的,但是在fireBug下可以清楚地发现有id的div移动到了没有id的那个div前面去了;也即是id='a'的div只是移动到了父节点下而已。

 <div id="test">
<div>adscasdjk</div>
<div id="a">adscasdjk</div>
</div>
<script type="text/javascript">
var t = document.getElementById("test");
var a = document.getElementById('a');
var tt = a.cloneNode(true);
t.appendChild(tt);
</script>

解决的方法就是将所要插入的节点clone一下在插入到相应位置,这样就可以达到预期的效果了

最新文章

  1. poj 3984:迷宫问题(广搜,入门题)
  2. TP中二维数组的遍历输出
  3. 浅谈.NET Micro Framework性能优化 转自 软件中国
  4. [Mac][phpMyAdmin] [2002] No such file or directory
  5. [MVC4-基礎] 連動DropDownList - 使用jQuery、JSON
  6. Python Base64转码解码
  7. php+redis实现多台服务器内网存储session并读取
  8. java HTTP请求 DefaultHttpClient is deprecated
  9. 比较全的JavaScript倒计时脚本
  10. hdu_1030(数学题+找规律)
  11. selenium+java破解极验滑动验证码的示例代码
  12. es6之字符串添加的东西
  13. JDK设计模式之——装饰者模式
  14. ES6删除对象中的某个元素
  15. Linux实时查询GPU使用命令
  16. Trident继承kafka
  17. ASP.NET MVC:4 Ways To Prevent Duplicate Form Submission(转载)
  18. Delphi XE5 for Android (四)
  19. 关于 未在本地计算机上注册“VFPOLEDB.1” 的解决方案
  20. 深海划水队项目----七天冲刺之day3

热门文章

  1. 【转】nginx的优缺点
  2. bashrc的加载
  3. Storm ui 展示字段说明
  4. ocp 1Z0-051 23-70题解析
  5. java assert的用法简介
  6. [iOS基础控件 - 6.12.2] Modal
  7. [iOS基础控件 - 6.10.1] PickerView 餐点搭配Demo
  8. Linux date命令 - 显示和设置系统日期与时间
  9. 转载 JQuery.data()方法学习
  10. OpenCDN2.0安装