在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ getElementsByClassName("btn").

getElementsByClassName("btn").length的輸出

<html lang="en">
<head>
    <meta charset="UTF-8">
    <script type="text/javascript" >
        var x=document.getElementsByClassName("btn").length;
        document.write(x);
    </script>
</head>
<body>
        <div class="btn">1</div>
        <div class="btn">2</div>
        <div class="btn">3</div>
        <div class="btn">4</div>
</body>
</html>

為何輸出結(jié)果是

0
1
2
3
4
?

回答
編輯回答
遲月

document.write()執(zhí)行時(shí).Document樹還沒有初始化. 所以是 0. 后面的是div顯示數(shù)字.
如果想要打印長度,加上onload函數(shù),那么你會(huì)發(fā)現(xiàn)一個(gè)神奇的效果,就是頁面就顯示一個(gè)4.
div哪去了?
因?yàn)閖s在執(zhí)行時(shí)Document已經(jīng)創(chuàng)建好了.在執(zhí)行Document.write時(shí),就會(huì)重新打開一個(gè)新的文檔流.
新的文檔流就會(huì)把之前存在的頁面都被清除掉了.
write要慎用.

2017年1月11日 18:15