如果图像存在,如何正确反映图像&用div
代替它?
// I don't know how to get `imageExists` without making cross-origin
(imageExists) ? (<img class="avatar-img" src={this.state.imageDataUrl}/>) :
(<div class="avatar-img no-avatar"><span>{shortcut}</span></div>)
当然,我可以单独XmlHttpRequest
,但这是很多不必要的代码+交叉来源。
答案 0 :(得分:1)
使用onerror
事件捕获所有无法加载的图片,并将其替换为您想要的<div>
:
$('img').on('error', function() {
$(this).replaceWith('<div class="avatar-img no-avatar"><span>{shortcut}</span></div>');
});