2014-02-11 27 views
2

我有如下所示如何檢測圖像文件是否存在於我的情況?

image1.png 
image2.png 
image3.png 
image4.png 
… 
… 
image20.png 



secondImg1.png 
secondImg2.png 
secondImg3.png 
secondImg4.png 
secondImg5.png 
……. 
…….. 
secondImg18.png 

我想在一個時間動態加載1個圖像的一系列圖像。

我的JS

var index = 1; 
var timer = setInterval(function(){playAnime()},200); 

function playAnime(){ 
    $('#holder').attr('src','image/image' + index + 'png') 
    index++ 
} 

我的代碼顯示了它是如何工作的總體思路,但我不知道如何在20和18停止索引停止動畫。 (我可以使用if聲明來檢查它是20還是18,但我認爲有更好的辦法)

基本上,我想檢測我的應用程序是否加載image21.png and secondImg19.png並停止,因爲沒有這樣的文件或圖像被破壞。這是可行的嗎?謝謝您的幫助!

+0

您可以通過鏈接使用ajax HEAD請求,load()事件或error()事件綁定來實現您正在查找的內容。 – BrianHall

回答

1

您可以使用.error()事件處理

$('#holder').attr('src', 'image/image' + index + 'png').error(function() { 
    //Image does not exists do something 
}); 

Docs

錯誤事件被髮送到元素,如圖像,由一個文件引用,由瀏覽器加載。如果元素未正確加載,則會調用它。

相關問題