[英]TypeError: document.getElementById(…)[0] is undefined
好了朋友們。 我不確定為什么這不起作用。 老師給我們舉了一個例子,據我所知,除了函數和變量名之外,一切都是一樣的...使用外部JavaScript文件,Dreamweaver說沒有語法錯誤或其他任何類型的調試器Firefox說TypeError: document.getElementById(...)[0] is undefined...
我不確定為什么但這里是我的代碼:
JavaScript :
var caveboyanim = new Array(6);
var curCaveBoy = 0;
for (var i = 0; i < 6; ++i) {
caveboyanim[i] = new Image();
caveboyanim[i].src = "images/caveboy" + i + ".png";
}
function caveboyanimation() {
if (curCaveBoy == 5)
curCaveBoy = 0;
else ++curCaveBoy;
document.getElementById("caveboy")[0].src = caveboyanim[curCaveBoy].src;
}
HTML :
<body onLoad="setInterval('caveboyanimation()', 1000);">
<img src="images/caveboy0.png" id="caveboy" alt="Image of a cave boy">
</body>
從以下位置刪除[0]
:
document.getElementById("caveboy")[0].src = caveboyanim[curCaveBoy].src;
索引0與jQuery對象一起使用以獲得“真實”文檔元素。 但是你沒有在這里使用JQuery,所以不需要它。
document.getElementById()
的返回不是數組。 采用:
document.getElementById("caveboy")
它沒有返回一個數組,所以你不能做[0]
。 https://developer.mozilla.org/en-US/docs/Web/API/document.getElementById
順便說一句,看看jQuery。
在原生javascript中:
document.getElementById("caveboy").src = caveboyanim[curCaveBoy].src;
在jQuery中你可以這樣做以獲得真正的DOM對象:
$("#caveboy")[0].src = caveboyanim[curCaveBoy].src;
document.getElementById("caveboy")
與$("#caveboy")[0]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.