JavaScript-DOM下

这篇博客详细介绍了JavaScript中DOM节点的遍历、元素树遍历、节点操作方法以及创建和删除元素的方法,包括parentNode、childNodes、appendChild()、document.createElement()等核心概念和函数用法。
摘要由CSDN通过智能技术生成

一、节点遍历

1 、parentNode

parentNode 找到当前节点对象的父节点,如果指定的节点没有父节点则返回 null 。

<div>
    <div id="dv"></div>
</div>
<script>
    var dv=document.getElementById('dv');
    console.log(dv.parentNode);//返回dv的父节点
</script>

2、childNodes

childNode 找到当前节点的所有子节点(返回一个数组)

<ul id="uu">
    <li>子元素</li>
    <li>子元素</li>
    <li>子元素</li>
    <li>子元素</li>
</ul>
<script>
    var uu=document.getElementById('uu');
    console.log(uu.childNodes);//返回uu所有的子节点
</script>

3、firstChild

firstChild 找到当前节点的第一个子节点

<ul id="uu">
    <li>子元素</li>
    <li>子元素</li>
    <li>子元素</li>
    <li>子元素</li>
</ul>
<script>
    var uu=document.getElementById('uu');
    console.log(uu.firstChild);//返回uu第一个子节点
</script>

4、lastChild

lastChild 找到当前节点的最后一个子节点

<ul id="uu">
    <li>子元素</li>
    <li>子元素</li>
    <li>子元素</li>
    <li>子元素</li>
</ul>
<script>
    var uu=document.getElementById('uu');
    console.log(uu.lastChild);//返回uu最后一个子节点
</script>

5、nextSibling

nextSibling 找到当前节点下一个兄弟节点

<ul id="uu">
    <li>鸣人</li>
    <li id="myLi">佐助</li>123
    <li>卡卡西</li>
    <li>小樱</li>
</ul>
<script>
    var myLi=document.getElementById('myLi');
    console.log(myLi.nextSibling);//返回myLi下一个兄弟节点
</script>

6、previousSibling

PreviousSibling找到当前节点的上一个兄弟节点

<ul id="uu">
    <li>鸣人</li>abc
    <li id="myLi">佐助</li>123
    <li>卡卡西</li>
    <li>小樱</li>
</ul>
<script>
    var myLi=document.getElementById('myLi');
    console.log(myLi.previousSibling);//返回myLi前一个兄弟节点
</script>
节点的遍历跟节点之间的关系密不可分,简单概括就是子找父,父找子,兄弟找兄弟这种关系。

二、元素树遍历

元素树遍历和节点数遍历的最大区别是,元素树遍历的时候只会找所有的元素节点,而节点树会找所有的的节点
element-->元素

1、firstElementChild

firstElementChild 找第一个子元素节点

2、lastElementChild

lastElementChild 找最后一个子元素节点

3、nextElementSibling

nextElementSibling 下一个兄弟元素节点

4、previousElementSibling

previousElementSibling 上一个兄弟元素节点

5、childElementCount

childElementCount 统计所有的子元素节点个数

6、children

children 获取所有的子元素节点(返回一个数组)

7、parentElement

parentElement 获取父元素节点

注意:大部分情况元素遍历比节点遍历更加简单

三、节点操作方法

1、appendChild()

appendChild()在当前元素节点的尾部追加一个新的子节点

语法:

当前对象.appendChild(新节点);

2、insertBefore()

insertBefore() 在指定的元素节点前插入一个新的节点

语法:

当前对象.insertBefore(新元素节点,指定的元素节点)

3、replaceChild()

replaceChild() 方法 ,用于替换节点,两个参数,第一参数是要插入的新节点,第二个是要被替换掉的节点,返回被替换的节点

语法:

当前对象.replaceChild(新元素节点,被替换的元素节点)

4、removeChild()

removeChild(exichild)方法

用于移除节点,接受一个参数,即要移除的节点,返回被移除的节点

语法:

当前对象.removeChild(删除元素节点)

5、cloneNode()

cloneNode()方法用于克隆一个节点

语法:

被克隆的对象.cloneNoe(参数)

参数:布尔值,默认值为false,规定是否进行深度克隆,
如果参数为true,那么将克隆Node节点以及它的后代节点,
如果参数为false,那么只克隆Node节点本身。

四、创建元素与删除元素

1、document.createElement()

createElement(元素名字) 给当前文档创建一个新的节点

语法:

document.createElement(元素名字)

2、document.createTextNode()

createTextNode()创建一个文本节点

语法:

document.createTextNode(文本内容)
注意:
创建完元素节点后一般都会先往元素节点中填充完内容后再添加到页面中去
var tr = document.createElement(“tr”);
tr.innserHTML=”<td></td>”;

3、对象.remove()

remove() 方法删除当前对象

语法:

当前对象.remove()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会撸串的傻狍子

感谢您的认可

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值