<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <div id="con"> <p>javascript</p> <div>jQuery</div> <h5>PHP</h5> </div> <script type="text/javascript"> var x=document.getElementById("con"); //document.write(x.firstChild.nodeName); document.write(x.firstChild.nodeValue); document.write(x.firstChild.nodeName); document.write(x.childNodes[0].nodeName); document.write(x.childNodes[0].nodeValue); //document.write(x.lastChild.nodeName); document.write(x.lastChild.nodeValue); </script> </body> </html> 第一个子节点不是<p>javascript</p>吗?为什么 document.write(x.firstChild.nodeName)==#text; document.write(x.firstChild.nodeValue)=="";
前面章节不是说了是有空白节点吗,请认真对待每一个章节
因为节点之间的空白符,前面章节有说过,如果你用的是火狐或者谷歌输出文本属性那肯定是无疑问的了,可能会问前面不是说,在firefox、chrome、opera、safari浏览器是文本节点吗,IE不是啊,可能老版本的IE可能会输出P,现在高版本的IE,节点间的空白符也是文本节点了,你可以测试节点个数,就知道了
有空白节点。。。