2012-08-14 69 views
4

我有一个对象包括文本和图像。我想要显示它的图像,但如果此图像不可用,则会显示默认图像。使用html()方法显示图像?

语法类似:

$('#MyPlace').html(object.toRender());

我怎样才能做到这一点?

+0

您能否准确定义您的意思是“不可用”?如何检查图像的可用性? – Lix 2012-08-14 12:14:24

+1

我的意思是图片无法加载,因为找不到。 – 2012-08-14 12:19:32

回答

4

你可以试试这个。

$('#MyPlace img').error(function() { 
    $(this).unbind("error").prop("src", 'default image path'); 
}); 
+1

+1这是一个隐藏的功能,很多人都知道。如果可能的话,我也会给一个jsFiddle示例 – Shyju 2012-08-14 12:10:06

1

您可以使用jQuery的.load.error事件,看到this jsFiddle example

标记

<img src="http://cdn.dreamincode.net/home/images/monthlygiveaway.gif"></img> 

<span id="result"></span>​ 

jQuery的

$("img") 
    .load(function() { 
     $("#result").text("loaded"); 
    }) 
    .error(function() { 
     $("#result").text("not loaded"); 
    }); 
​