因此,在我的Chrome瀏覽器的new website中,我試圖使用setInterval函數每5秒切換一次圖像。這似乎工作,但是我有問題無法設置null的屬性src。Uncaught TypeError無法設置null的屬性'src'
var images = new Array();
images[0] = "/images/grilled-chicken-large.png";
images[1] = "/images/sizzly-steak.png";
var img = document.getElementById("img");
function changeImage() {
for (var i = 0; i < 3; i++) {
img.src = images[i];
if (i == 2){i = i - 2;};
}
}
window.onload=setInterval("changeImage()", 5000);
我知道的問題是,我試圖與IMG的ID來獲得元素完成頁面加載之前,我已經有了一個在window.onload,所以我不知道是什麼去做。另外,如果我創建一個包含setInterval和img變量的init()函數,頁面將會凍結。
任何想法?
您只有'圖像[0]'和'圖像[1]',但您正嘗試訪問'圖像[2]'。 – bfavaretto 2012-07-30 21:34:56
注意:不要將字符串傳遞給'setInterval',它使用'eval'。傳遞函數:'setInterval(changeImage,5000);'。另外,'window.onload = setInterval(changeImage,5000);'不會做你認爲它的作用。 – 2012-07-30 21:39:53
只是意識到bfavaretto,謝謝。 Rocket,你的意思是把它作爲changeImage()而不是「changeImage()」傳遞給它?最後一行沒有做到我認爲的那樣意味着什麼? – 2012-07-31 00:03:19