1

次のコードを使用してdivを作成しました...

var bannerBox = document.createElement("div");
bannerBox.id = "bannerBox";

...そして次のように2番目のdiv...

var bannerAd = document.createElement("div");
bannerAd.className = "bannerAd";

上記のdivは1つの関数で作成されています。今度は別の関数で、次のように最初のdivにアクセスしようとしました...

var allAds = document.getElementById("bannerBox").childNodes; 

...しかし、このエラーが発生します: キャッチされなかったエラーはnullのプロパティの子ノードを読み取ることができません

4

1 に答える 1

3

ドキュメント内の要素(など)にbannerBoxdivを渡すことにより、実際にdivをドキュメントに配置する必要があります。appendChildinsertBeforedocument.body

document.body.appendChild(bannerBox);

(ただし、ドキュメント内の任意の要素にすることができます。必ずしもそうである必要はありませんbody。)

ドキュメントに追加されたら、表示した方法で取得できますid

そしてもちろん(これはあなたが抱えている問題ではありませんが、次の問題になる可能性があります)、bannerBox子ノードを持つために(たとえば、childNodes空にならないためにNodeList)、それに何かを入れる必要があります。あなたの変数名から、私はおそらくあなたがbannerAdそれに入れたいと思うでしょう、例えば:

bannerBox.appendChild(bannerAd);
于 2013-03-12T11:09:07.420 に答える