0

私が抱えている Javascript の問題を追跡しました。問題は、ページの読み込み後に実行された次のコードで確認できます。

var btns = document.getElementsByTagName('button');
console.log(btns);
divs = document.getElementsByTagName("div");
console.log(btns.length);
console.log(btns);

このコードが機能すると (空白の配列 [] が表示されない)、ボタンの配列、0、ボタンの配列がコンソールに表示されます。これはどのようにして長さの間違った値を返すのでしょうか??

4

2 に答える 2

0

私はこのコードをテストしました:

<button>bt1</button><div>www</div>
<button>bt_2</button>
<script type="text/javascript">
var btns = document.getElementsByTagName('button');
console.log(btns);
divs = document.getElementsByTagName("div");
console.log(btns.length);
console.log(btns)
</script>

そして、それは正しく表示されます:

[button, button]
2
[button, button]
于 2012-06-23T06:46:46.753 に答える
0

DOMContentLoaded イベントとして設定すると、これが修正されたようです。

document.addEventListener("DOMContentLoaded", function () {...}, false)

onload コードを設定する正しいイベントのようです。

于 2012-08-27T19:37:47.520 に答える