博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js原生appendChild的bug
阅读量:5051 次
发布时间:2019-06-12

本文共 590 字,大约阅读时间需要 1 分钟。

appendChild 主要是用来追加节点 插入到最后

window.onload = function(){

var ul2 = document.getElementById('ul2');
var oli = document.getElementsByTagName('li');
for(var i=0;i<oli.length;i++){
ul2.appendChild(oli[i]);
}
}
<h3>讲Id为ul1的内容插入到ul2里面</h3>
  <ul id="ul1">
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  <li>6</li>
  </ul>
  <ul id="ul2">
  </ul>

把ul1内容插入到ul2里面,这个其实是搬家而不是复制 这个要切记

可以查看一下效果

为什么会出现这样的效果 是因为 循环的时候 由于不停的搬家 导致length 在改变 如果用for的话 这样开始的length 已经被固定啦 所以出现问题,所以说要改成

while(oli.length){

ul2.appendChild(oli[0]);

}

这样的都是插入第一条 所以就成功啦 大家可以试试

 

转载于:https://www.cnblogs.com/dyllove98/p/3165410.html

你可能感兴趣的文章
bzoj1230 开关灯 线段树
查看>>
LinearLayout
查看>>
学习python:day1
查看>>
css3动画属性
查看>>
第九次团队作业-测试报告与用户使用手册
查看>>
Equal Sides Of An Array
查看>>
CentOS笔记-用户和用户组管理
查看>>
Mongodb 基本命令
查看>>
Qt中QTableView中加入Check列实现
查看>>
“富豪相亲大会”究竟迷失了什么?
查看>>
控制文件的备份与恢复
查看>>
返回代码hdu 2054 A==B?
查看>>
Flink独立集群1
查看>>
iOS 8 地图
查看>>
20165235 第八周课下补做
查看>>
[leetcode] 1. Two Sum
查看>>
iOS 日常工作之常用宏定义大全
查看>>
PHP的SQL注入技术实现以及预防措施
查看>>
MVC Razor
查看>>
软件目录结构规范
查看>>