javascript - 为什么搜索不到DOM树中的文本节点?
ringa_lee
ringa_lee 2017-04-11 11:59:49
[JavaScript讨论组]


    
    测试能够找到内容


    132****5698
    

姓名

学校

132****5698

010-15*2452

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

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

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

ringa_lee

全部回复(3)
迷茫

getElementsByTagName() 方法返回一个实时的包含具有给出标签名的元素们的HTMLCollection。就意味着getElementsByTagName捕获不了Text节点,你可以用

for(var i = 0;i<bodyChildren.length;i++){
    console.log(bodyChildren[i].nodeType)
}

遍历的结果都是1

document.getElementsByTagName('body')[0].innerText

返回所有文本

天蓬老师

判断nodeType即可

ringa_lee

getElementsByTagName
Elements!
Elements!!
Elements!!!
这个方法只返回元素节点!

要返回所有节点请使用 childNodes 属性, 再从中筛选出文本节点

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号