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_15_作用域分配与变量访问规则,再送个闭包
Oct 20 Javascript
jQuery下通过$.browser来判断浏览器.
Apr 05 Javascript
jQuery插件实现无缝滚动特效
Nov 24 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
Apr 03 Javascript
详解如何构建Angular项目目录结构
Jul 13 Javascript
详解Vue 事件修饰符capture 的使用
Dec 29 Javascript
Vue 使用中的小技巧
Apr 26 Javascript
Auto.js自动收取自己和好友蚂蚁森林能量脚本
Jun 28 Javascript
vue中的ref和$refs的使用
Nov 22 Javascript
javascript头像上传代码实例
Sep 28 Javascript
JavaScript实现简单进度条效果
Mar 25 Javascript
vue中提示$index is not defined错误的解决方式
Sep 02 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
PHP 柱状图实现代码
2009/12/04 PHP
一步一步学习PHP(2)――PHP类型
2010/02/15 PHP
PHP chmod 函数与批量修改文件目录权限
2010/05/10 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
PHP中使用curl入门教程
2015/07/02 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
JS实现向表格中动态添加行的方法
2015/03/30 Javascript
JavaScript中getUTCSeconds()方法的使用详解
2015/06/11 Javascript
使用JS 插件qrcode.js生成二维码功能
2017/02/20 Javascript
Angularjs实现下拉框联动的示例代码
2017/08/22 Javascript
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
2020/05/29 jQuery
[38:21]2018DOTA2亚洲邀请赛3月30日 小组赛A组 LGD VS Newbee
2018/03/31 DOTA
[01:21]2018DOTA2亚洲邀请赛4.5采访 打DOTA2也能有女朋友?
2018/04/06 DOTA
Python下Fabric的简单部署方法
2015/07/14 Python
详解Python函数作用域的LEGB顺序
2016/05/14 Python
python3之微信文章爬虫实例讲解
2017/07/12 Python
python批量替换页眉页脚实例代码
2018/01/22 Python
python提取具有某种特定字符串的行数据方法
2018/12/11 Python
Tomcat Mysql datasource数据源配置
2015/12/28 面试题
活动邀请函范文
2014/01/19 职场文书
中学生自我鉴定
2014/02/04 职场文书
个人自我剖析材料
2014/02/07 职场文书
人事专员工作职责
2014/02/22 职场文书
办公室员工岗位工作职责
2014/03/10 职场文书
物业公司的岗位任命书
2014/06/06 职场文书
“四风”问题的主要表现和危害思想汇报
2014/09/19 职场文书
2014乡镇机关党员个人对照检查材料思想汇报
2014/10/09 职场文书
工作时间擅自离岗检讨书
2014/10/24 职场文书
委托书英文
2015/01/28 职场文书
2019军训心得体会
2019/06/27 职场文书
Golang中异常处理机制详解
2021/06/08 Golang
MySQL分区路径子分区再分区
2022/04/13 MySQL
python中 Flask Web 表单的使用方法
2022/05/20 Python
Linux中各个目录的作用与内容
2022/06/28 Servers