Javascript removeChild()删除节点及删除子节点的方法


Posted in Javascript onDecember 27, 2015

下面给大家介绍Javascript removeChild()删除节点的方法,具体详情如下所示:

在Javascript中,只提供了一种删除节点的方法:removeChild()。

removeChild() 方法用来删除父节点的一个子节点。

语法:

    parent.removeChild(thisNode)

参数说明:

 

参数 说明
thisNode 当前节点,即要删除的节点
parent 当前节点的父节点,即 thisNode.parentNode

例如,删除 id="demo" 的节点的语句为:

var thisNode=document.getElementById("demo");
thisNode.parentNode.removeNode(thisNode);

举例,删除节点:

<div id="demo">
  <div id="thisNode">点击删除我</div>
</div>
<script type="text/javascript">
document.getElementById("thisNode").onclick=function(){
  this.parentNode.removeChild(this);
}
</script>

实例演示:

 Javascript removeChild()删除节点及删除子节点的方法

可以看出来,虽然Javascript只提供了一种删除节点的方法,但是足够用了。

ps:JavaScript删除子节点的方法

HTML代码如下:

<div id="f"> 
 <div>a</div> 
 <div>b</div> 
 <div>c</div> 
</div>

如果想删除f节点下的所有子节点,很自然也很正常想到的方法应该就是下面的这段代码了:

var f = document.getElementById("f"); 
var childs = f.childNodes; 
for(var i = 0; i < childs.length; i++) { 
  alert(childs[i].nodeName); 
  f.removeChild(childs[i]); 
}

当程序运行后我们发现无论在FireFox还是在IE下,均不能完全的删除所有的子节点(FireFox中把空白区域也
当成节点,所以删除结点的结果会不一样的),这是因为当你把索引为0的子节点删除后那么很自然的原来索引
为1节点此时它的索引变成0了,而这时变量i已经变成1了,程序继续走时就会删除原先索引为2的现在为1的节点,这样程序运行的结果就是只删除了一半的子节点,用for in遍历结果也是一样的。想正常的删除全部节点
的话,我们应该从后面往前删除,代码如下:

for(var i = childs.length - 1; i >= 0; i--) { 
  alert(childs[i].nodeName); 
  f.removeChild(childs[i]); 
}

我们从索引最大值开始删除,采用递减的方法,这样索引便不会移动改变了。

Javascript 相关文章推荐
JavaScript中的其他对象
Jan 16 Javascript
js 程序执行与顺序实现详解
May 13 Javascript
javascript的push使用指南
Dec 05 Javascript
JS实现可缩放、拖动、关闭和最小化的浮动窗口完整实例
Mar 04 Javascript
jquery Easyui快速开发总结
Aug 20 Javascript
JQuery ztree 异步加载实例讲解
Feb 25 Javascript
基于javascript实现全屏漂浮广告
Mar 31 Javascript
ReactJs快速入门教程(精华版)
Nov 28 Javascript
从零开始学习Node.js系列教程三:图片上传和显示方法示例
Apr 13 Javascript
vue 本地环境跨域请求proxyTable的方法
Sep 19 Javascript
JS隐藏号码中间4位代码实例
Apr 09 Javascript
微信小程序对图片进行canvas压缩的方法示例详解
Nov 12 Javascript
JavaScript的removeChild()函数用法详解
Dec 27 #Javascript
JavaScript构造函数详解
Dec 27 #Javascript
JavaScript生成二维码图片小结
Dec 27 #Javascript
JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
Dec 26 #Javascript
Knockout自定义绑定创建方法
Dec 26 #Javascript
JavaScript动态设置div的样式的方法
Dec 26 #Javascript
JS插件overlib用法实例详解
Dec 26 #Javascript
You might like
咖啡因含量是由谁决定的?低因咖啡怎么来?低因咖啡适合什么人喝
2021/03/06 新手入门
php断点续传之如何分割合并文件
2014/03/22 PHP
微信自定义菜单的处理开发示例
2015/04/16 PHP
各浏览器中querySelector和querySelectorAll的实现差异分析
2012/05/23 Javascript
Node.js中调用mysql存储过程示例
2014/12/20 Javascript
JavaScript中 ES6 generator数据类型详解
2016/08/11 Javascript
JS实现手写parseInt的方法示例
2017/09/24 Javascript
webpack组织模块打包Library的原理及实现
2018/03/10 Javascript
基于Vue+element-ui 的Table二次封装的实现
2018/07/20 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
Postman环境变量全局变量使用方法详解
2020/08/13 Javascript
js实现淘宝浏览商品放大镜功能
2020/10/28 Javascript
js 实现碰撞检测的示例
2020/10/28 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
python 转换 Javascript %u 字符串为python unicode的代码
2016/09/06 Python
Python多层装饰器用法实例分析
2018/02/09 Python
基于pandas数据样本行列选取的方法
2018/04/20 Python
Pyqt QImage 与 np array 转换方法
2019/06/27 Python
Python any()函数的使用方法
2019/10/28 Python
Python通过Manager方式实现多个无关联进程共享数据的实现
2019/11/07 Python
python多线程实现代码(模拟银行服务操作流程)
2020/01/13 Python
python实现猜拳游戏项目
2020/11/30 Python
西班牙创意礼品和小工具网上商店:Curiosite
2016/07/26 全球购物
时尚、社区、科技:SEVENSTORE
2019/04/26 全球购物
运动会100米解说词
2014/01/23 职场文书
网络程序员自荐信
2014/01/25 职场文书
市级青年文明号申报材料
2014/05/26 职场文书
房屋买卖协议书范本
2014/09/27 职场文书
党员民主评议自我评价
2014/10/20 职场文书
小学重阳节活动总结
2015/03/24 职场文书
致运动员的广播稿
2015/08/19 职场文书
2016年小学生寒假总结
2015/10/10 职场文书
在JavaScript中如何使用宏详解
2021/05/06 Javascript
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle
Java Dubbo框架知识点梳理
2021/06/26 Java/Android
Pandas数据类型之category的用法
2021/06/28 Python