我有2門陣列(我是從一個XML文件中讀取):如何在iframe旋轉的URL在JavaScript
urls
包含的URLdurations
包含整數表示秒
我想循環訪問這些數組(在達到結尾時再次從0
開始)以在iFrame內顯示:
urls[0].innerHTML
爲durations[0]
秒urls[1].innerHTML
爲durations[1]
秒urls[2].innerHTML
爲durations[2]
秒
等等
爲了做到這一點,我有以下代碼:
while (i <= len) {
$j('.marquee').attr('src',urls[i].innerHTML);
setTimeout(function(){
i++;
if (i >= len) {i = 0;}
},parseInt(duration[i].innerHTML) * 1000);
}
我然後reali在達到第一次調用該函數的時間並增加i
之前,它會在循環中運行一百萬次。
所以我想只是暫停的代碼,但我很快看到在很多stackoverflow問題,這樣做是一個非常糟糕的主意。
所以問題是,我該怎麼做?
作爲一個額外的問題...我應該在哪些網址的fadeIn()和/或fadeOut()?
你不能使用while循環,因爲setTimeout是異步的... – epascarello
如果沒有很多的URL,你應該加載它們並只顯示一個。 – Hacketo