<html >
<head >
<meta http-equiv="content-type" content="text/html;charset=gbk"/>
<title>Image Gallery</title>
<script id="script" type="text/javascript" src="scripts/showpic.js" >
//alert(document.getElementsByTagName("body")[0].childNodes.length); //1、假如执行这句 结果是7,请问下怎么是7
// window.onload = countBodyChildren()//2、我问下 需要在加载时 显示上一句的结果 这句写在哪里, 我写这里没效果,所以我加到下面的onclick里面了
</script>
</head>
<body >
<h1 >Snapshots</h1>
<ul >
<li >
<a href="keling.gif" title="可怜" onclick="countBodyChildren(); return false"> 可怜的鱼兔妹</a>
</li>
<li>
<a href="diao.gif" title="上吊" onclick="showPic(this); return false"> 上吊的鱼兔妹</a>
</li>
<li >
<a href="tiao.gif" title="跳跳" onclick="showPic(this); return false"> 得瑟的鱼兔妹</a>
</li>
</ul>
<img id="placeholder" src="kongbai.jpg" alt="my image gallery"/>
</body>
</html>
<head >
<meta http-equiv="content-type" content="text/html;charset=gbk"/>
<title>Image Gallery</title>
<script id="script" type="text/javascript" src="scripts/showpic.js" >
//alert(document.getElementsByTagName("body")[0].childNodes.length); //1、假如执行这句 结果是7,请问下怎么是7
// window.onload = countBodyChildren()//2、我问下 需要在加载时 显示上一句的结果 这句写在哪里, 我写这里没效果,所以我加到下面的onclick里面了
</script>
</head>
<body >
<h1 >Snapshots</h1>
<ul >
<li >
<a href="keling.gif" title="可怜" onclick="countBodyChildren(); return false"> 可怜的鱼兔妹</a>
</li>
<li>
<a href="diao.gif" title="上吊" onclick="showPic(this); return false"> 上吊的鱼兔妹</a>
</li>
<li >
<a href="tiao.gif" title="跳跳" onclick="showPic(this); return false"> 得瑟的鱼兔妹</a>
</li>
</ul>
<img id="placeholder" src="kongbai.jpg" alt="my image gallery"/>
</body>
</html>
function countBodyChildren(){
alert(document.getElementsByTagName("body")[0].childNodes.length); //1、假如执行这句 结果是7,请问下怎么是7
var cs = document.getElementsByTagName("body")[0].childNodes;//获取body的所有子元素
for(var i=0; i<cs.length; i++){//循环所有子元素(部分元素为文本元素 所以比你看到的多)
alert("tagName:"+cs[i].tagName+"\nnodeType:"+cs[i].nodeType+"\nnodeName:"+cs[i].nodeName+"\nnodeValue:"+cs[i].nodeValue);
}
}
window.onload = function(){//页面加载完成后才可以调用
countBodyChildren();
}
//alert(document.getElementsByTagName("body")[0].childNodes.length); //1、假如执行这句 结果是7,请问下怎么是7
//我测试得出的是4
// window.onload = countBodyChildren()//2、我问下 需要在加载时 显示上一句的结果 这句写在哪里, 我写这里没效果,所以我加到下面的onclick里面了
//应该写在<body>里,如<body onload="countBodyChildren()">
<body onload="countBodyChildren();" >
放在body里面就可以了
7
我理解的是
<body></body> 这里有个空的文本节点, <body>里面有3个元素节点 以及各一个文本节点, 最后是7个,
猜测= =, 才看js 方法都不知道 没获取到文本信息,
是这个意思么?
火狐测试是7个 3个元素节点 4个文本节点
IE测试是4 3个元素节点 最后加一个文本节点可以根据这个nodeType 属性获取节点类型
谢谢,我开始是用ie,后来试试火狐。 都是7
现在发现ie是 4.