preloader img with callback
by Евгений
HTML
<div id="photo">loading...</div>
CSS
#photo > img {
width: 200px;
}
JavaScript
//подгрузка фото
function preloadPhoto(src, callback) {
if (!callback || !src) return;
var img = new Image();
img.src = src;
if (img.complete || img.readyState === 4) {
callback();
}
else {
$(img).on("load error onreadystatechange",function(e){
if (e.type === "error") {
//ошибка загрузки фото
}
else {
callback();
}
});
}
}
$(function() {
var src = 'http://s1.goodfon.ru/image/562960-7400x5343.jpg';
preloadPhoto(src, function() {
var src = 'http://s1.goodfon.ru/image/562960-7400x5343.jpg';
$('#photo').html('<img src=' + src + '>');
});
})