質問

私はdivの中にある<li>の配列を作成しようとしています。だから私は持っている。

var arr = document.getElementById('mainNav').getElementsByTagName('li');

は、テスト目的のために、私は、アラートがポップアップし、どのような配列のサイズがありますかどうかを確認するためにalert("test"); alert(arr.length);を置きます。アラートのどちらが現れたが、私はその変数の宣言の前に警告を配置する場合、それが正常に動作します。何が間違って行くことができるか。

役に立ちましたか?

解決

document.getElementById('mainNav')nullを返しているので、おそらく、あなたのアラートが表示されません。あなたはJavascriptのエラーを取得しているか確認してください。またはエラーが発生している場所を確認することが容易にするために複数の行にあなたのコードを壊すます:

var mainNav = document.getElementById('mainNav');
alert(mainNav);
var arr = mainNav.getElementsByTagName('li');

他のヒント

あなたが「mainNav」内のLI要素を持っていることが確実な場合。 onLoad関数でコードを置くようにしてくださいます:

window.onload = function(){
var arr = document.getElementById('mainNav').getElementsByTagName('li');

}

要素が作成される前に、あなたのコードが実行多分ます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top