JavaScript的removeChild()函数用法详解

  作者:bea

removechild 函数可以删除父元素的指定子元素。 如果此函数删除子节点成功,则返回被删除的节点,否则返回null。 语法结构: fatherObj.removeChild(childrenObj) 参数解释: 1.fatherObj:要删除子元素的元素对象。 2.childrenObj:要被删除的子元素对象。 特别说明: 在火狐、谷歌和IE8以上浏览器中,空白也算是一个文本节点,但是在IE8和IE8以下浏览器中会忽略空白文本节点,具体可以参阅javascript如何获

removechild 函数可以删除父元素的指定子元素。


如果此函数删除子节点成功,则返回被删除的节点,否则返回null。


语法结构:


fatherObj.removeChild(childrenObj)


参数解释:


1.fatherObj:要删除子元素的元素对象。
2.childrenObj:要被删除的子元素对象。


特别说明:


在火狐、谷歌和IE8以上浏览器中,空白也算是一个文本节点,但是在IE8和IE8以下浏览器中会忽略空白文本节点,具体可以参阅javascript如何获取元素的子节点和父节点 一章节。


代码实例:


实例一:




<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="/" />
<title>脚本之家</title>
<script type="text/javascript">
window.onload=function(){
var obox=document.getElementById("box");
var lis=obox.getElementsByTagName("li");
obox.removeChild(lis[1]);
}
</script>
</head>
<body>
<ul id="box">
<li>脚本之家一</li>
<li>脚本之家二</li>
<li>脚本之家三</li>
<li>脚本之家四</li>
</ul>
</body>
</html>


以上代码可以删除box的子元素中的第二个li元素。


实例二:




<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>脚本之家</title>
<script type="text/javascript">
window.onload=function(){
var obox=document.getElementById("box");
var liArray=[];
var y=0;
var childNodes=obox.childNodes;
for(var i=0;i<childNodes.length;i++){
if(childNodes[i].nodeType==1){
liArray[y]=childNodes[i];
y=y+1;
}
}
obox.removeChild(liArray[1]);
}
</script>
</head>
<body>
<ul id="box">
<li>脚本之家一</li>
<li>脚本之家二</li>
<li>脚本之家三</li>
<li>脚本之家四</li>
</ul>
</body>
</html>


以上代码可以从box中所有子节点中选取元素节点,然后将元素节点放入数组,然后再删除第二个元素节点。


总结:


removeChild()


这个函数是得到元素的父元素,进行删除的。语法形式为:parent.removeChild(child);


有时候我们希望在不涉及父元素的情况下进行删除。但是DOM 就是这个机制,必须明确元素和父元素才能进行删除。在进的到要删除的元素时,我们也是可以进行删除操作的,利用其 parentNode 属性来找到父元素:




var child=document.getElementById(p1);
child.parentNode.removeChild(child);


注意:jquery也有功能与removeChild相对应的函数:remove()和empty()


remove():是指将自己本身和子元素均删除


empty():是删除子元素




有用  |  无用

猜你喜欢