cuando coloco una etiqueta img, creo dinámicamente el atributo src. ¿Hay una manera de probar si el src (ruta donde se encuentra la imagen) existe realmente con javascript con el fin de evitar que:ver si existe el src de img
Respuesta
Puede utilizar el error
evento:
var im = document.getElementById('imageID'); // or select based on classes
im.onerror = function(){
// image not found or change src like this as default image:
im.src = 'new path';
};
línea Versión:
<img src="whatever" onError="this.src = 'new default path'" />
O
<img src="whatever" onError="doSomething();" />
<img>
etiqueta apoya estos eventos:
abort
(OnAbort)error
(OnError)load
(onLoad)
Más información:
Vi en otros foros, que no funciona en IE, ¿es correcto? –
@Mr: Funciona para mí: http://jsbin.com/egohud – Sarfraz
¡Bien, gracias! Probablemente versiones anteriores, quién sabe xD gracias. –
se puede hacer una llamada AJAX anterior (con head
método) y ver el código de retorno del servidor o puede utilizar onerror
evento para cambiar url o hacerlo oculto, por ejemplo
<img src="notexist.jpg" onerror="this.style.visibility = 'hidden'">
(He usado atributo en línea sólo para explicar la idea)
Ejemplo impresionante. Funciona de maravilla. –
lo aborda de manera equivocada.
Cuando genera sus enlaces con el script del lado del servidor, verifique si el archivo existe o no (utilizando file_exists()
en PHP, por ejemplo).
No debe confiar en JavaScript cuando puede hacerlo en el lado del servidor, ya que JavaScript se puede modificar y deshabilitar.
Pregúntese usted mismo cómo está generando los atributos src=
, y verifique si el archivo existe o no, y proporcione una alternativa.
Si crea el src dinámicamente con javascript puede utilizar esto:
var obj = new Image();
obj.src = "http://www.javatpoint.com/images/javascript/javascript_logo.png";
if (obj.complete) {
alert('worked');
} else {
alert('doesnt work');
}
La imagen existe en la ruta siguiente, pero dice 'no funciona' cuando ejecuto el fragmento de código. ¿Es por la "misma política de origen"? – yalpertem
es porque, obj.complete devuelve falso. el código se ejecuta de inmediato. mientras que el estado aún no está completo. por lo que siempre va a bloquear –
- 1. javascript comprueba si img src es válido?
- 2. cómo conseguir img src valor
- 3. Recuperar img src niño (jQuery)
- 4. jQuery seleccionar img con src
- 5. Cambiando IMG SRC con Javascript
- 6. etiquetas IMG SRC y JavaScript
- 7. Comprobar si img src está vacía usando jQuery
- 8. <img src> w/timeout?
- 9. Django plantilla img src no trabajar
- 10. ¿Cambiar img src en diseños receptivos?
- 11. Un archivo php como img src
- 12. Python 2.7 Hermosa sopa img src Extracto
- 13. Cómo actualizar el src de <img /> con jQuery?
- 14. JQuery cambie el valor de <img src="" by ID
- 15. Reemplace dinámicamente el atributo img src con jQuery
- 16. ¿Cómo ver si el archivo de recursos existe en Java?
- 17. ver si existe campo en la clase
- 18. ¿Desempeño de configuración de img src a valor sin cambios?
- 19. jQuery establecer img src dependiendo de donde se hace clic
- 20. HTML/Javascript eliminar datos de img atributo src
- 21. Atributo SRC coincidente de la etiqueta IMG usando preg_match
- 22. Oracle Blob como img src en la página de PHP
- 23. XPath para analizar "SRC" de la etiqueta IMG?
- 24. HTML/Javascript - img src remoto con automática http/https prefijo
- 25. Javascript: obtenga <img> src y establezca como variable?
- 26. ataque XSS con javascript en img src atributo
- 27. Defina un atributo src <img> en CSS
- 28. Ver si existe un objeto en S3 usando PHP
- 29. Probar para ver si existe una imagen en C#
- 30. Comprobación para ver si existe un valor en Javascript
es posible que desee considerar el uso de un script del lado del servidor para comprobar esto como navegadores pueden tener activado javascript. – rogerlsmith
Definir "realmente existe".Debido a la política de origen entre dominios, no podrá examinar las imágenes que el navegador recupera del sitio remoto utilizando Javascript, por lo que lo que está solicitando puede ser imposible. Puede enviar la URL al servidor y hacer que descargue el archivo, pero esa es una mala idea desde el punto de vista de la seguridad. – Borealid
Encontré esta publicación. Debería ayudarte. http://www.irt.org/script/52.htm –