获取getElementsByClassName的长度

时间:2017-11-29 23:09:14

标签: javascript

当我使用getElementsByClassName函数时,我试图浏览所有元素,但我注意到我的长度等于0。

这是我的简单例子:

的index.html

<html>
    <head>
        <script type="text/javascript" src="prove.js"></script>
    </head>
    <body>
        <button class="cButton">1</button>
        <button class="cButton">2</button>
        <button class="cButton">3</button>
        <button class="cButton">4</button>
        <button class="cButton">5</button>
        <button class="cButton">6</button>
    </body>
</html>

prove.js

var buttons = document.getElementsByClassName("cButton");
console.log(buttons);
console.log("Length: " + buttons.length);

我很困惑,因为这是在控制台上获得的结果:

enter image description here

因此,如果HTMLCollection有结果,为什么我的长度等于0?

然而,如果我在这里的代码片段上执行相同的代码,它会显示实际长度:

var buttons = document.getElementsByClassName("cButton");
console.log(buttons);
console.log("Length: " + buttons.length);
<button class="cButton">1</button>
<button class="cButton">2</button>
<button class="cButton">3</button>
<button class="cButton">4</button>
<button class="cButton">5</button>
<button class="cButton">6</button>

为什么在我的例子中,如果HTMLCollection填满,我就无法获得{{1}}的实际长度?

提前致谢!

0 个答案:

没有答案