问答详情
源自:9-3 getElementsByTagName()方法

为什么长度是0,并且document.write(list[0].innerHTML)没有输出?

<html>
    <head>
        <script type="text/javascript">
        var list=document.getElementsByTagName("li");
        document.write(list.length+"<br/>");
document.write(list[0].innerHTML);
        </script>
    </head>
    <body>
        <ul>
            <li>苹果</li>
            <li>香蕉</li>
            <li>水蜜桃</li>
            <li>西瓜</li>
        </ul>
    </body>
</html>


提问者:慕丝3582901 2019-03-28 21:04

个回答

  • 小笑笑白
    2019-03-29 10:24:02
    已采纳

    程序是顺序执行的,执行你的JS代码时还没有加载body中的ul和li,所有获取不到元素。解决方案有两个:

    1、讲script代码段移到</ul>之后的任何位置

    2、将script代码改造,添加onload事件,像这样:

    window.onload=function(){

        //这里写你的代码。

    }