вопрос
Помогите настроить плагин, что бы прелоадер (gif) не работал под картинкой, когда она уже загрузилась.
демо
http://torrentbest.org
http://jsfiddle.net/xJVuv/7/
демо
http://torrentbest.org
http://jsfiddle.net/xJVuv/7/
<div class="gallery"><img src="http://torrentbest.org/uploads/posts/2013-03/thumbs/1362380137_a691e717607a5b3d5877600e7814c9e5.jpg"></div>
.preloader { background:url("http://torrentbest.org/templates/white/images/preload.gif") center center no-repeat; display:inline-block; }
$(function () {
$.fn.preloadify = function (a) {
function i(d) {
if (f[d] == false) {
g++;
a.oneachload(b[d]);
f[d] = true
}
if (a.imagedelay == 0 && a.delay == 0) $(b[d]).css("visibility", "visible").animate({
opacity: 1
}, 700);
else if (a.delay == 0) {
h(b[d], e);
e += a.imagedelay
} else if (a.imagedelay == 0) h(b[d], a.delay);
else {
h(b[d], a.delay + e);
e += a.imagedelay
}
}
a = $.extend({
delay: 0,
imagedelay: 0,
mode: "parallel",
preload_parent: "a",
check_timer: 100,
ondone: function () {},
oneachload: function () {},
fadein: 700
}, a);
var k = $(this),
j, c = 0,
e = a.imagedelay,
g =
0,
b = k.find("img").css({
display: "block",
visibility: "hidden",
opacity: 0
}),
f = [],
h = function (d, l) {
$(d).css("visibility", "visible").delay(l).animate({
opacity: 1
}, a.fadein)
};
b.each(function () {
$(this).parent(a.preload_parent).length == 0 ? $(this).wrap("<a class='preloader' />") : $(this).parent().addClass("preloader");
f[c++] = false
});
b = $.makeArray(b);
c = g = 0;
e = a.imagedelay;
j = setInterval(function () {
if (g >= f.length) {
clearInterval(j);
a.ondone()
} else if (a.mode == "parallel") for (c = 0; c < b.length; c++) b[c].complete == true && i(c);
else if (b[c].complete == true) {
i(c);
c++
}
}, a.check_timer)
}
});
$(function(){
$(".gallery").preloadify({ imagedelay:500 });
$(".gallery").preloadify({ imagedelay:500 }); e.preventDefault();
});