weixin_慕先生9089348
2020-03-13 15:43
<div>
javascript
<p>javascript</p>
<div>jQuery</div>
<h5>PHP</h5>
</div>
<script type="text/javascript">
var d = document.getElementsByTagName("div")[0].childNodes;
for(i=0;i<d.length;i++){
document.write(d[i].nodeName + "<br>");
document.write(d[i].nodeValue + "<br>");
document.write(d[i].nodeType + "<br>");
}
getElementsByTagName()方法返回的是带有指定标签名的节点对象集合。
document.getElementsByTagName("div")的意思是,获取了所有的div存在一个数组
[0]是选择了第一个div,即最外面的那个div
.childNodes是获取子节点,意思是最外面的div包含的子节点
主要是通过getElementsByTagName获取到的是个数组,
如果给第一个div加个id=“div”,然后使用getElementById,就可以写成
var d = document.getElementById("div").childNodes;
代码里有两个div,通过标签名访问节点得到的是一个数组,不加[0]的话,变量d就是个数组了。换成[1]就访问的是第二个div标签
JavaScript进阶篇
468195 学习 · 21891 问题
相似问题