Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/04/2012, 20:33
Avatar de Naahuel
Naahuel
 
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 1 mes
Puntos: 192
Respuesta: Esperar que attr(src,x) termine

Probá algo así:

Código Javascript:
Ver original
  1. // Precargar imagen
  2.             src_imagen = '%inserta url%';
  3.             imagenPreCargada = new Image();
  4.             imagenPreCargada.src = src_imagen;
  5.            
  6.             // Obtener elemento de imagen, darle su SRC y ocultarlo
  7.             $img = $('img').hide().attr('src',src_imagen);
  8.            
  9.             //cuando la imagen termine de cargar, mostrar la imagen con efecto
  10.             $(imagenPreCargada).load(function(){
  11.                 $img.fadeIn();
  12.             });

Ejemplo funcionando:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  3.     <script type="text/javascript">
  4.         $(function(){
  5.             // Precargar imagen
  6.             src_imagen = 'http://nahueljose.com.ar/upload/uploads/homero.gif?' + Math.random()*99999 //emular URL diferente, ignora esto.
  7.             imagenPreCargada = new Image();
  8.             imagenPreCargada.src = src_imagen;
  9.            
  10.             // Obtener elemento de imagen y ocultarlo
  11.             $img = $('img').hide().attr('src',src_imagen);
  12.            
  13.             //cuando la imagen termine de cargar, mostrar la imagen con efecto
  14.             $(imagenPreCargada).load(function(){
  15.                 $img.fadeIn();
  16.             });
  17.         });
  18.     </script>
  19.     <title>Test</title>
  20. </head>
  21.     <!-- -->
  22.     <img />
  23. </body>
  24. </html>

Creo que el script se explica por si mismo. Espera a que la imagen esté cargada en la caché para mostrarla con efecto y no se note la carga.
__________________
nahueljose.com.ar