<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
</head>
<body>
<div>
javascript
<p>javascript</p>
<div>jQuery</div>
<h5>PHP</h5>
</div>
<script type="text/javascript">
var node=document.getElementsByTagName("div")[0].childNodes;
var huoqu=document.getElementsByTagName("div")[0].childNodes;
for (var i=0;i<huoqu.length;i++)
{document.write("第"+(i+1)+"个子节点的名称:"+huoqu[i].nodeName+"<br/>");
document.write("第"+(i+1)+"个子节点的值:"+huoqu[i].nodeValue+"<br/>");
document.write("第"+(i+1)+"个子节点的类型:"+huoqu[i].nodeType+"<br/><br/><br/>");
}
</script>
</body>
</html>
看你用的什么浏览器。childNode 在 ie 和 firefox 中有着不同的处理方式,ie 只会把 html 标签算作孩子结点,而 firefox 除了把 html 标签算作孩子结点外,还会把“文字、空格、换行符和制表”算作孩子结点,三个元素标签,加四个换行,刚好七个
没有啊,我这头试了一下,是跳到8-3了啊。。。怎么回事呢,你用的是什么浏览器?讲得真好,之前我就是原生态来写企业站,虽然简化很多工作,但是每次要修改的时候得修改很多东西,看了这个我觉得我有必要去改下我的代码了。
<div
javascript
<p>javascript</p>
<div>jQuery</div>
<h5>PHP</h5>
</div>
<script type="text/javascript">
var node = document.getElementsByTagName("div")[0].childNodes;
document.write("Number of nodes:"+ node.length + "<br/>")
for(var i = 0; i < node.length; i++){
document.write("Node type:"+ node[i].nodeType + "<br/>")
document.write("Node type:"+ node[i].nodeValue + "<br/>")
}