2010-10-20 139 views
3

我有這樣的事情:的Javascript IMG onload事件

<img class="side_image right" id="side_image" src="http://path/to/file_large.jpg" width="300" 
height="210" onload="document.getElementById('loading_gif').style.display = 'none';" /> 

我的問題是如何判斷圖像不存在。只有在加載圖像時,該代碼塊纔會隱藏加載gif。但是,當真的沒有圖像...我堅持加載gif。即使沒有圖像並且設置加載gif display ='none',我仍然想要顯示一些內容。

你對使用原生javascript/html或php有什麼建議嗎?沒有jQuery或其他JavaScript庫因爲我們不允許使用這些工具。

謝謝...

回答

3
onload = function() { 
    var imageRef = document.getElementById('blah'); 
    imageRef.onerror = function(){ 
     this.src='blah.gif'; 
    } 
} 
+1

是什麼imageRef?對不起,我只是一個初學者... – Woppi 2010-10-20 05:07:24

+1

+1 meder再次做到這一點! – alex 2010-10-20 05:08:23

+0

@Woppi'imageRef'是一個圖像的示例引用,它可以是'document.getElementsById('my-img')'。 – alex 2010-10-20 05:09:01

0

要建立過修理者的答案...

<img src="image_to_load.jpg" onload="..." ... onerror="this.src='alternate_image.jpg';" /> 
+0

謝謝mattbasta!這也是我所做的:D – Woppi 2010-10-20 05:35:03

+0

呃。 -1用於將頁面邏輯混合到您的HTML中。 – Phrogz 2011-01-23 21:00:29