Ответ Шанкара Санголи может не работать так, как написано. Например, IE 6 попытается загрузить src и запустить событие onerror до того, как будет назначена ваша функция onerror.
Чтобы это работало, вы должны присвоить onerror до установки значения src (не может быть сделано полностью в разметке):
Markup:
<img data-uri="{data-uri-value}" data-fallback-url="{fallback-url}" class="imageuri" />
JQuery:
$('.imageuri').each(function () {
this.onabort = this.onerror = function () {
$(this).attr('src', $(this).attr('data-fallback-url'));
};
$(this).attr('src', $(this).attr('data-uri'));
});
Протестировано в IE 6, IE 9 и Chrome 16.