我有一个功能应该相当简单,应该在加载后完成,以减少初始加载时间。
基本上我正在使用这段代码来获取类“prefImg”的所有元素并用它们做一些事情。但是在 firebug 中调试时,它说 var divsList 是未定义的。
function populatePrefsList()
{
var divsList = new Array();
divsList = document.getElementsByClassName("prefImg");
var x = divsList.length;
var i = 0;
for(i=0; i<divsList.length; i++) {
var imgs = divsList[i].getElementsByTagName("img");
var imgSRC = imgs[0].src;
var alt = imgs[0].alt;
var descs = divsList[i].getElementsByTagName("h4");
var desc = descs[0].innerHTML;
//var thisPref = new preference(imgSRC, alt, desc);
//prefsList[i] = thisPref;
}
}
显然我有断点var x = divsList.length
...
我无法理解这一点,我最初将脚本放在页面的头部,但认为它可能尚未加载 div,已将其移至正文的底部。这并没有解决它。
我已经有了var divsList = document.getElementsByClassName("prefImg");
如果有人能告诉我哪里出错了,我将不胜感激。大约有 50 个带有 className 的 div prefImg
。
干杯