2010-10-20 219 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