我的代码如下:
<!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的,但又不能确定是不是,请高手指点。
IE不支持DocumentType节点类型,因此document.doctype在IE下始终为null.
但IE会把文档声明解释为注释,并创建相应的注释节点。
#comment 是注释节点的nodeName
是不是你的页面html的注释啊