猿问

为什么搜索不到DOM树中的文本节点?

<html>

<head>

    <meta charset="utf-8">

    <title>测试能够找到内容</title>

</head>

<body>

    132****5698

    <div>

        <div>姓名</div>

        <div>学校</div>

    </div>

    <div>

        <p>132****5698</p>

    </div>

    <div>

        <span>010-15*2452</span>

    </div>

</body>

</html>

这段代码的DOM树是这样子么?

当我这样子查询的时候应该查询到的只是DOM树中的所有元素节点,但是我想查询到DOM树中的所有文本节点应该什么解决办法呢?

var body = document.getElementsByTagName('body');var bodyChildren = body[0].getElementsByTagName('*');


弑天下
浏览 850回答 1
1回答

慕盖茨4494581

getElementsByTagName() 方法返回一个实时的包含具有给出标签名的元素们的HTMLCollection。就意味着getElementsByTagName捕获不了Text节点,你可以用for(var&nbsp;i&nbsp;=&nbsp;0;i<bodyChildren.length;i++){ &nbsp;&nbsp;&nbsp;&nbsp;console.log(bodyChildren[i].nodeType) }遍历的结果都是1用document.getElementsByTagName('body')[0].innerText返回所有文本
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答