<html>
<title></title>

<script type='text/javascript'>
var d = document;
  var head = d.getElementsByTagName("head")[0] || d.documentElement;
   alert(d.getElementsByTagName("head").length);//没有head为什么长度还是1呢
   alert( d.documentElement);
   
</script>
<body>
sjeieoi
<body></html>我html 里没有head 为什么alet()的结果是1  在ie6 和firefox 下都是这样

解决方案 »

  1.   

    应该是浏览器自动加上去的,你把后面那名改成:
    alert( d.documentElement.innerHTML);显示有head标签
      

  2.   


    <script type='text/javascript'>
    var d = document;
        alert(d.getElementsByTagName("head").innerHTML);//没有head为什么长度还是1呢
       alert( d.documentElement);
        </script>显示是undefined
      

  3.   


    alert(d.documentElement.innerHTML);
    no
    alert(d.getElementsByTagName("head").innerHTML);
      

  4.   

    <script type='text/javascript'>
    var d = document;
        alert(d.getElementsByTagName("head").innerHTML);//没有head为什么长度还是1呢
       
        </script>哥们,ie firefox 3.6 下皆是 undefined
      

  5.   

     d.getElementsByTagName("head").id="test";
       alert(d.getElementsByTagName("head").id);//没有head为什么长度还是1呢这样就可以知道是浏览器自动把head给加上了
      

  6.   

    对!head body标签浏览器会自动识别并添加!
      

  7.   

    这样是报错的 var d = document;
    d.getElementsByTagName("head").innerHTML[0].id='se';
        alert(d.getElementsByTagName("head")[0].id);//没有head为什么长度还是1呢
       
      

  8.   

    失误,代码不小心写错了var d = document;
    d.getElementsByTagName("head")[0].id='se';
        alert(d.getElementsByTagName("head")[0].id);//没有head为什么长度还是1呢
       
      

  9.   


    这样写也是对的,在ie和ff下均会弹出se