我有一個事件,我每5秒觸發一次以檢查文件是否已完成處理。在第一次迭代後,在Internet Explorer中,setTimeout不會觸發
我做了以下內容:
if (InSuppArray(item.Id) == false && item.Status() == "Queue") {
var t = setTimeout(function() { checkQueuedSupp(item.OrderId) }, 5000);
suppIds.push({ Id: item.OrderId, TimerId: t });
}
基本上,多個文件可以上傳所以這次創建的定時器陣列,並殺死他們作爲文件完成。
這在Firefox和Chrome中運行良好,但計時器只在Internet Explorer中啓動一次。
有沒有更好的方法來做到這一點?我搜索了一下,發現了IE和setTimeout
的一些問題,但其中大多數都暗指這樣的事實,即它從來沒有在IE中工作,至少我的火一次。
而不是創建多個超時,而是使用'setInterval',它會每隔5秒調用一次你的函數,直到你終止它爲止。 – Cfreak
我知道絕對沒有與'setTimeout'和IE有關的問題。你的問題一定在別的地方。 – plalx
你在頭文件中提到的引起迭代的問題在哪裏?您發佈的代碼段中沒有迭代。 – Teemu