为了账号安全,请及时绑定邮箱和手机立即绑定

大神请看看

为什么第3个子节点,也就是p标签内面的“JavaScript”的名称和类型都能输出,而值却是空的?

正在回答

1 回答

首先你要去了解一下 nodetype这个属性


1    Element    代表元素    Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference    

2    Attr    代表属性    Text, EntityReference    

3    Text    代表元素或属性中的文本内容。    None    


第一个之所以能打出nodevalue,那是因为它的类型是3 取的是div元素里的文本内容

其他的不行,那是因为其他几个类型都是1,获取的是div下的各个子元素。

你要打印元素内的内容可以如下两种方式

  1. //获取所有元素的内容,并打印
    for(var i=1;i<chi.length;i++){
      document.write("节点类型"+chi[i].firstChild.nodeName+chi[i].firstChild.nodeType+chi[i].firstChild.nodeValue+'<br>')
     }
  2. //获取元素信息,打印其内容
    for(var i=1;i<chi.length;i++){
      document.write("节点类型"+chi[i].nodeName+chi[i].nodeType+chi[i].firstChild.nodeValue+'<br>')
     }


0 回复 有任何疑惑可以回复我~
#1

Trunks 提问者

非常感谢!
2015-06-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468189    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

大神请看看

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信