有谁知道javascript 中body和documentElement的区别

解决方案 »

  1.   

    javascript 中body和documentElement z
    他们不能比的
    一个是脚本语言
    一个事HTML元素
      

  2.   

    你指的应该是document.body和document.documentElement的区别吧
    看看这个:http://zhidao.baidu.com/question/47205231.html?si=2
      

  3.   

    documentElement是代表document的根元素html
    body不是根元素,
    在不同的dtd下,获取页面属性的方法是不同的
      

  4.   

    做了一个比较,结果很有意思!L@_@K
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
      <title> new document </title>
      <meta name="generator" content="editplus" />
      <meta name="author" content="" />
      <meta name="keywords" content="" />
      <meta name="description" content="" />
     </head> <body>
    <script type="text/javascript">
    <!--
    document.write("document.body.tagName: ", 
    document.body.tagName, "<br />");
    document.write("document.documentElement.firstChild.nextSibling.tagName: ", 
    document.documentElement.firstChild.nextSibling.tagName, "<br />");
    document.write("document.documentElement.firstChild.nextSibling === document.body: ", 
    document.documentElement.firstChild.nextSibling === document.body, "<br />");
    document.write("document.documentElement.firstChild.nextSibling.outerHTML == document.body.outerHTML: ", 
    document.documentElement.firstChild.nextSibling.outerHTML == document.body.outerHTML, "<br />");document.write("<hr />");document.write("document.documentElement.tagName: ", 
    document.documentElement.tagName, "<br />");
    document.write("document.body.parentNode.tagName: ", 
    document.body.parentNode.tagName, "<br />");
    document.write("document.body.parentNode === document.documentElement: ", 
    document.body.parentNode === document.documentElement, "<br />");
    document.write("document.body.parentNode.outerHTML == document.documentElement.outerHTML: ", 
    document.body.parentNode.outerHTML == document.documentElement.outerHTML, "<br />");
    //-->
    </script>
     </body>
    </html>
    OUTPUT:document.body.tagName: BODY
    document.documentElement.firstChild.nextSibling.tagName: BODY
    document.documentElement.firstChild.nextSibling === document.body: false
    document.documentElement.firstChild.nextSibling.outerHTML == document.body.outerHTML: true--------------------------------------------------------------------------------
    document.documentElement.tagName: HTML
    document.body.parentNode.tagName: HTML
    document.body.parentNode === document.documentElement: false
    document.body.parentNode.outerHTML == document.documentElement.outerHTML: true看上去似乎是两棵内容完全一样、而且同根(document)的节点树!
      

  5.   

    不好意思,我没说清楚,我指的应该是document.body和document.documentElement的区别!
      

  6.   

    yixianggao的回答蛮好的,很详细!
      

  7.   

    不是一种东西嘛  
    yixianggao 给的说明很详细 学习
      

  8.   

    yixianggao的运行结果和我不一样,我是IE8,你是什么浏览器?document.body.tagName: BODY
    document.documentElement.firstChild.nextSibling.tagName: BODY
    document.documentElement.firstChild.nextSibling === document.body: true
    document.documentElement.firstChild.nextSibling.outerHTML == document.body.outerHTML: true--------------------------------------------------------------------------------
    document.documentElement.tagName: HTML
    document.body.parentNode.tagName: HTML
    document.body.parentNode === document.documentElement: true
    document.body.parentNode.outerHTML == document.documentElement.outerHTML: true