Acabo de armar una galería jQuery simple con algunas transiciones de desvanecimiento como se ve here. Todo funciona bien en todos los navegadores, excepto que la "precarga de imagen" no funciona en la primera carga en Firefox (funciona en todos los demás navegadores). Las imágenes permanecen al 0% de opacidad en Firefox. No estoy seguro por qué.La precarga de imagen de jQuery no funciona por primera vez en FireFox
Aquí está el código de precarga.
$(document).ready(function(){
//--------PRELOAD LOAD IMAGES--------\\
$('img').load(function() {
//once image has loaded fade in image
$(this).animate({opacity : 1.0}, 1000);
//kill padding on last thumbnail of each line
$('#headshots img').eq(3).css({'padding-right' : '0'});
$('#ports img').eq(3).css({'padding-right' : '0'});
$('#ports img').eq(7).css({'padding-right' : '0'});
});
});
Gracias de antemano por cualquier ayuda.
funciona como un encanto yo no sabía que se podía cadena como la de jQuery ¿le importaría explicar. cómo la última cada (función) llama al El final de la función de carga está funcionando? Gracias! – mattelliottIT
@mattelliottIT: el último '.each' itera sobre cada imagen, verificando que se haya configurado la propiedad' .complete', y si lo ha hecho, dispare manualmente el evento '.load'. En general, cuando una imagen es '.complete', su evento' .load' no se dispara, por lo tanto, la intervención manual para verificar que la imagen se haya completado y desencadenar su evento de carga en consecuencia. Imagine que una de las imágenes ya ha sido almacenada en caché por el navegador y se recupera inmediatamente de la memoria caché sin que se desencadene el evento de carga. Su controlador de eventos '.load' no se activará, por lo que su página no se comportará como se espera. :) – karim79
Ah Entendido. Gracias por tomarse el tiempo para explicar eso. – mattelliottIT