问题一:
在html文档中去除所有标签,放上下面的代码一,为什么弹出来的对话框显示的不是1?而是大于1,而且IE8显
示的为4,其他浏览器显示的为3?为神马??求高人解答!放上代码二,就都显示1了,为神马??
【代码一】
<script type="text/javascript">
var a=document.getElementsByTagName("*");
alert(a.length);
</script>
【代码二】
<script type="text/javascript">
var a=document.getElementsByTagName("script");
alert(a.length);
</script>
问题二:
看如下代码:
【代码三】
<html>
<head>
<title> New Document </title>
<style></style>
</head>
<body>
<hr/>
</body>
</html>
<script type="text/javascript">
var a=document.getElementsByTagName("head");
var b=a[0].getElementsByTagName("*");
alert(b.length);
</script>
这段代码在所有浏览器上运行的结果为:2
把【var a=document.getElementsByTagName("head");】中的"head"换为"body"
在所有的浏览器上运行的结果为:2
再把【var a=document.getElementsByTagName("head");】中的“head”换为"html"
在所有的浏览其中的运行结果为:6
【问】为什么不是2+2=4而是6?????
问题三:
看如下代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<script type="text/javascript">
var a=document.getElementsByTagName("*");
alert(a.length);
</script>
在IE8中的运行结果为5,去掉doctype标签后,运行结果为4.
在非IE浏览器中,不管是否去掉doctype标签,运行结构都为3.
是不是说明,IE把doctype标签页作为一个网页元素,而其他浏览器不这样认为?
虽然问的问题有点扯淡,但还是希望各位高手帮忙解答一下!