Usted podría asegurarse primero de que sus imágenes están ocultas por defecto (eliminando la necesidad de sus jQuery hide
llamadas) con un poco de CSS,
.contentwrap img {
display:none;
}
Y luego, en su document.ready, puede probar lo siguiente. Admitiré que habrá algunas redundancias aquí en que algunas imágenes pueden (detrás de las escenas) intentar desvanecerse dos veces, pero el resultado final será el mismo. Esta es la compensación que voy a admitir al tratar de dar una respuesta simple a esto.
La situación será que, en su documento, ya se hayan cargado algunas imágenes (especialmente las que ya estaban en la memoria caché) y algunas aún pueden estar pendientes.
// fade in images already loaded:
$('.contentwrap img').fadeIn(1000);
// and tell pending images to do the same, once they've finished loading:
$('.contentwrap img').load(function() {
$(this).fadeIn(1000);
});
Desde jQuery "apilar" los efectos de animación, una vez que algo se desvaneció por completo en, puede llamar fadeIn en él de nuevo, y nada debe (visible) a pasar.
Si esto fuera inaceptable, probablemente podría idear una forma más compleja de comprobar qué imágenes se han desvanecido y cuáles no, antes de establecer el evento de carga en ellas.
Buena suerte!
sí, yo tengo. Tengo muchos otros jquery pasando también funciona bien. – James
'$ (document) .ready' debe activarse después de que se carguen todos los HTML, incluidas las imágenes. – chelmertz
se dispara después de cargar el DOM – James