0

我想在视图中显示用户的头像,但有时会丢失图像,因此missing.png会显示。如何将其替换为默认图像?(注意:我不想用它替换视图中所有损坏的图像,只是我感兴趣的那个)。

我做了一些谷歌搜索并找到了这个 javascript 函数,但不确定如何在我的视图中使用它(.html.havl文件)(我对 Ruby on Rails 非常陌生)

$('img').error(function(){
 $(this).attr('src', '<<<REPLACE URL>>>');
});

这是我的看法

...
.user_avatar
 %img{:src => @user.avatar.url} <<<< how do I make the 'src' points to the default image 
...
4

1 回答 1

0

只需在 JS 端使用更具体的选择器:

$(".user_avatar img").on('error', function () {
    $(this).attr('src', 'replace-url');
});

如果您想在 RoR 端执行此操作,您可以检查它是否@user.avatar.url存在于同一个文件系统上,甚至使用 HTTP 请求。

于 2013-02-25T18:42:38.597 回答