JavaScript的removeChild()函数用法详解

Gelsey ·
更新时间:2024-11-15
· 766 次阅读

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="//www.jb51.net/" /> <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():是删除子元素



removechild 函数 JavaScript

需要 登录 后方可回复, 如果你还没有账号请 注册新账号