在我的JS文件中,我试图从JavaScript数组创建一个列表。显然,在页面加载之前你不能document.getElementId
,因为首先调用了JS。 if语句产生三个结果,但由于window.onload
函数只加载了一个。
var getDateContent = function(year,month,date){
if(contentObj != null && contentObj[year] != null &&
contentObj[year][month] != null &&
contentObj[year][month][date] != null){
var contentObjArray = contentObj[year][month][date];
window.onload=function(){
var items = document.getElementById("test");
for (var i = 0; i < contentObjArray.length; i++ ) {
var item = document.createElement("li");
item.innerHTML = contentObjArray[i];
items.appendChild(item);
}
}
}
}
我想我的问题是,如何在没有window.onload
的情况下访问元素ID?这是因为window.onload
只在我需要多次运行时运行一次
答案 0 :(得分:0)
使用addEventListener
而不是分配到onload
属性。
addEventListener('load', function () { /* ... */ });
这只会添加额外的侦听器而不是覆盖前一个侦听器。
(您需要shiv for IE8)