1

我使用以下代码创建了一个 div ...

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

...和第二个 div 如下...

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

上述 div 已在一个函数中创建。现在在另一个函数中,我尝试按如下方式访问第一个 div...

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

...但它会产生此错误: 未捕获的错误无法读取 null 的属性子节点

4

1 回答 1

3

您必须将bannerBoxdiv 实际放入文档中,方法是将其传递到文档中的某个元素(例如)中appendChild或上:insertBeforedocument.body

document.body.appendChild(bannerBox);

(但它可以是文档中的任何元素,不一定是body.)

一旦它在文档中,您可以id按照您显示的方式检索它。

当然(这不是您遇到的问题,但它可能是下一个问题),bannerBox要拥有任何子节点(例如,childNodes不为空NodeList),您需要在其中放入一些东西。从您的变量名称中,我想您可能想将其放入bannerAd其中,例如:

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