DOM的TreeWalker对象简介(3)

本文详细介绍了如何使用TreeWalker对象遍历DOM树,通过具体示例展示了如何获取和操作已过滤的节点,适用于前端开发人员深入理解DOM操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不要将上述方法与标准DOM元素  属性  /  方法 混淆  ;  这些只能在TreeWalker对象中工作,以便您导航已过滤的节点。

使用与上面相同的示例,让我们看看如何使用遍历方法遍历返回的节点:

1
2
3
4
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" ><div id =“contentarea”></font></font><font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
<p>一些<span>文字</ span> </ p></font></font><font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
<b>粗体文字</ b></font></font><font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
</ DIV></font></font><font></font>
<font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
<script type =“text / javascript”></font></font><font></font>
<font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
var rootnode = document.getElementById(“contentarea”)</font></font><font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
var walker = document.createTreeWalker(rootnode,NodeFilter.SHOW_ELEMENT, null false )</font></font><font></font>
<font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
//警告Tree Walker当前指向的起始节点(根节点)</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
alert(walker.currentNode.tagName) //提醒DIV(id = contentarea)</font></font><font></font>
<font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
//单步执行并提醒所有子节点</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
while (walker.nextNode())</font></font><font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
alert(walker.currentNode.tagName) //提醒P,SPAN和B.</font></font><font></font>
<font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
//返回集合的第一个子节点并发出警报</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
walker.currentNode = rootnode // reset TreeWalker指向指向根节点的指针</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
alert(walker.firstChild()。tagName) //提醒P.</font></font><font></font>
<font></font><font style= "vertical-align: inherit;" ><font style= "vertical-align: inherit;" >
</ SCRIPT></font></font>


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69933200/viewspace-2652257/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/69933200/viewspace-2652257/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值