¿Es posible detectar una vez que se ha cargado una imagen con jQuery?Detectar carga de imagen
Respuesta
se puede utilizar el controlador de .load()
caso, como este:
$("#myImg").load(function() {
alert('I loaded!');
}).attr('src', 'myImage.jpg');
Asegúrese de adjuntarlo antes establecer la fuente, o el evento pudo haber disparado antes de que ha conectado un controlador para escuchar por ella (por ejemplo, cargar desde la memoria caché).
Si eso es no factible (ajuste de la src
después de la unión), asegúrese de comprobar si está cargado y disparar usted mismo, de esta manera:
$("#myImg").load(function() {
alert('I loaded!');
}).each(function() {
if(this.complete) $(this).load();
});
Es tan fácil de usar llanura Javascript:
// Create new image
var img = new Image();
// Create var for image source
var imageSrc = "http://example.com/blah.jpg";
// define what happens once the image is loaded.
img.onload = function() {
// Stuff to do after image load (jQuery and all that)
// Within here you can make use of src=imageSrc,
// knowing that it's been loaded.
};
// Attach the source last.
// The onload function will now trigger once it's loaded.
img.src = imageSrc;
esto falla al verificar las imágenes que ya están en la memoria caché. – vsync
también he estado investigando esto durante mucho tiempo, y he encontrado este plugin para maravillosamente ayuda con esto: https://github.com/desandro/imagesloaded
Parece una gran cantidad de código, pero ... No encontré otra forma de verificar cuando se cargó una imagen.
El uso de la función jQuery on ('carga') es la forma correcta de comprobar si la imagen está cargada. Pero tenga en cuenta que la función de encendido ('carga') no funcionará si la imagen ya está en caché.
var myImage = $('#image_id');
//check if the image is already on cache
if(myImage.prop('complete')){
//codes here
}else{
/* Call the codes/function after the image is loaded */
myImage.on('load',function(){
//codes here
});
}
creo que esto le puede ayudar un poco:
$('img').error(function(){
$(this).attr(src : 'no_img.png');
})
Así, si carga - se mostrará imagen original. En el otro, se mostrará la imagen, que contiene datos con la imagen bloqueada o el encabezado HTTP 404.
Es fácil con jQuery:
$('img').load(function(){
//do something
});
Si intentó con:
$('tag')html().promise().done(function(){
//do something
}) ;
pero eso no va a comprobar si la imagen es de carga. Ese fuego hecho si el código es de carga. De lo contrario, puede verificar si el código fue hecho, luego disparar la función de carga img y verificar si la imagen está realmente cargada. Así que hacemos una combinación de ambos:
$('tag')html('<img src="'+pic+'" />').promise().done(function(){
$('img').load(function(){
//do something like show fadein etc...
});
}) ;
- 1. Cómo detectar la calidad de imagen subjetiva
- 2. ListView estrategia de carga asíncrona imagen
- 3. Cómo detectar si la carga de una imagen generará una excepción OutOfMemory en .NET?
- 4. Detectar clic en una imagen
- 5. Evento de carga de imagen después de cargar la imagen
- 6. Detectar "imagen dañada o truncada" en Firefox
- 7. Detectar cuando se carga un Applet
- 8. Carga de la imagen de Android-Django
- 9. callback de carga de imagen jQuery
- 10. Cómo detectar orientación de la imagen (texto)
- 11. Carga de imagen optimizada en un UIScrollView
- 12. Mostrando imagen de carga con getJSON
- 13. Carga lenta de la imagen Flexslider
- 14. Carga de imagen para imágenes estáticas
- 15. Javascript Imagen Objeto - Manejar proceso de carga
- 16. Carga de imagen UITableViewCell asincrónica con GCD
- 17. cómo detectar formas en una imagen?
- 18. Cómo detectar si se toca la imagen
- 19. cheque Jquery si la imagen se carga
- 20. JQuery - ¿Verificar cuando se carga la imagen?
- 21. Fondo de imagen de representación de Safari negro en carga
- 22. Acercamiento de seguridad de carga de imagen PHP
- 23. Fuga de memoria de carga de imagen con C#
- 24. Javascript Enlace de evento de carga de imagen
- 25. ¿Cómo detectar el área de texto de la imagen?
- 26. ¿Cómo puede detectar un complemento cuando se carga una solución?
- 27. ¿Por qué la carga del formulario no puede detectar excepciones?
- 28. ¿Cómo puedo detectar cuándo se carga una página web?
- 29. Carga de datos de imagen 'canvas' en el servidor
- 30. Chrome, Three.js: carga de la imagen de origen cruzado negó
¿Es posible hacer esto: '$ ("# MyIMG") en vivo ("carga", function() {// danza});'" –
desgracia. , '.load()' está en desuso a partir de jQuery v1.8 – SquareCat
@CummanderCheckov, ya que estaba en desuso debido a la ambigüedad entre el controlador de eventos y el buscador de contenido ajax. En el código anterior simplemente reemplace '.load (' con '.on ('load', 'para funcionalidad equivalente en 1.7+. –