首页 新闻 会员 周边 捐助

IE6-8中Doctype的nodeName是不是#comment啊,如何测试?

0
悬赏园豆:5 [已解决问题] 解决于 2012-09-24 09:24

我的代码如下:

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
    <script>
function traversalByNextSibling(obj){
    var ch=obj.firstChild,
        result=[];
    do{
        result.push(ch.nodeName);
        if(ch.childNodes.length){
            result.push.apply(result,traversalByNextSibling(ch));
        }
    }while(ch=ch.nextSibling);
    return result;
}

console.log(traversalByNextSibling(document));
//IE6-8:  #comment,HTML,HEAD,TITLE,BODY,SCRIPT 
//other:["html", "HTML", "HEAD", "#text", "TITLE", "#text", "#text", "BODY", "#text", "SCRIPT", "#text"] 

    </script>
</body>
</html>

在IE6-8中出现了#comment,我猜测这个是Doctype的,但又不能确定是不是,请高手指点。

草根程序猿的主页 草根程序猿 | 初学一级 | 园豆:129
提问于:2012-09-01 14:01
< >
分享
最佳答案
1

IE不支持DocumentType节点类型,因此document.doctype在IE下始终为null.

但IE会把文档声明解释为注释,并创建相应的注释节点。

#comment 是注释节点的nodeName

收获园豆:5
三剑客 | 初学一级 |园豆:92 | 2012-09-21 13:38
其他回答(1)
0

是不是你的页面html的注释啊

chenping2008 | 园豆:9836 (大侠五级) | 2012-09-01 21:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册