2009-10-19 16 views

Respuesta

43

Usted puede agregar un controlador de oneror:

<img src="http://example.com/somejpg.jpg" 
    onerror='this.onerror = null; this.src="./oops.gif"' /> 

Nota establecer onerror a nula en el controlador para que el navegador no muere si oops.gif no se puede cargar por alguna razón.

+0

Oh, me olvidé de onerror. Esto podría ser más fácil, pero la solución que publiqué a continuación permite precachear las imágenes y verificar su disponibilidad antes de que se muestren. Depende de lo que necesita ... – moxn

+0

¡Impresionante! Me encanta cuando aprendo trucos nuevos como este. Iba a recurrir a jQgery jiggery pokery. – MikeMurko

+0

¡El problema aquí es el tiempo por el cual la imagen considerada como no disponible! Puede llevar mucho tiempo que la carga de la actividad del navegador funcione hasta que invoque el evento 'onerror'. – SaidbakR

2

Intente hacer uso de la propiedad Image.complete.

var img = new Image(w,h) 
img.src = "http://..."; 

Ahora compruebe periódicamente si img.complete es verdad y llamar a algunos mecanismo de reserva shuold seguiría siendo false después de n segundos.

Cuestiones relacionadas