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

两个div是怎么区分呢,为什么我显示的是div后的第一个字母

<div>
  <p>javascript</p>
  <div>jQuery</div>
  <h5>PHP</h5>
</div>
<script type="text/javascript">
 var x=document.getElementsByTagName("div")[0].childNodes;
 document.write("div子节点个数"+x.length+"<br />");
 document.write("节点类型:"+x[0].nodeType+"<br />");
 document.write("节点值:"+x[0].nodeValue+"<br />");
 for (i=0;i<=x.length;i++)
 {
     var s=document.getElementsByTagName("div")[i].childNodes;
 document.write("div子节点个数"+x.length+"<br />");
 document.write("节点类型:"+x[i].nodeType+"<br />");
 document.write("节点值型:"+x[i].nodeValue+"<br />");
 }
 

正在回答

4 回答

document.write("节点类型:"+x[0].nodeType+"<br />");
 document.write("节点值:"+x[0].nodeValue+"<br />");

你的这两句代码是第一个子节点的类型和第一个子节点的值;第一个div的第一个子节点是#text即javascript

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

拉斐罗 提问者

非常感谢!
2016-09-30 回复 有任何疑惑可以回复我~

 我猜你想要输出的是:

<p>javascript</p>
<div>jQuery</div>
<h5>PHP</h5>

这些子节点的信息,那么这一句:

var s=document.getElementsByTagName("div")[i].childNodes; 

是多余的

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

当你根据TagName获取节点时后面有个坐标[0]就表示第一个div,[1]表示第二个div

【var x=document.getElementsByTagName("div")[0].childNodes;】

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

不明白意思,支持一下

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

举报

0/150
提交
取消

两个div是怎么区分呢,为什么我显示的是div后的第一个字母

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