本帖最后由 zj23785 于 2010-08-23 14:33:20 编辑

解决方案 »

  1.   

    这是加载顺序的问题,script加载后就执行了,而后面的p标签元素还没加载。可以放到页面加载完毕的事件中执行。
    window.onload = function() {
        var i=document.body.getElementsByTagName("p")
        alert(i);
    }
      

  2.   

    我照你的改了还是获取不到那个节点,但是我用document.body.getElementsByTagName("p")又能够获得节点。
      

  3.   

    jscript只有IE会解析。
    <script type="text/jscript">
    ------->
    <script type="text/javascript"><!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>无标题页</title>
    </head>
    <body>
    <script type="text/javascript">
    window.onload = function() {
    var i = document.body.getElementsByTagName("p")[0];
    alert(i.innerHTML); // 1.2012年是世界末日
    }
    </script>
    <p id="id">1.2012年是世界末日</p>
    <p>2.早该如此了,审判日快点到来!</p>
    </body>
    </html>
      

  4.   

    加载顺序问题,p还没加载进来。放到页面最下面
    <script type="text/jscript" language="javascript">
    var i=document.body.getElementsByTagName("p")
      alert(i);
      </script>
      

  5.   

    楼主,document.getElementsByID不对, 应该是document.getElementById 试试这个
      

  6.   


    <script type="text/jscript" language="javascript">
    var i=document.getElementsByTagName("p")//body可以不要
      alert(i);
      </script>
    <p id="id">1.2012年是世界末日</p>
    <p>2.早该如此了,审判日快点到来!</p>
    </body>
    </html>
    我这样获取节点有什么问题?还有我直接var i=document.getElementsByID("id")也不行,
    顺便问下是不是我要引用body内的节点我的脚本就必须放在body内啊
    var i=document.getElementsByID("id")
    应该是:/*var i=document.getElementById("id")*/不要s,Id的d小写