Arreglando .load () en IE para imágenes en caché - Trucos CSS

Anonim

La función .load () se activa cuando el elemento al que se llama está completamente cargado. Se usa comúnmente en imágenes, que pueden no estar completamente cargadas cuando el JavaScript se ejecuta originalmente y, por lo tanto, devolverían información incorrecta sobre sí mismas (por ejemplo, altura / ancho). La mayoría de los navegadores se ocupan de esta multa. IE puede causar problemas cuando las imágenes de la página se almacenan en caché.

Seleccionando la imagen y cambiando su atributo src para agregar un parámetro aleatorio (basado en la fecha). Esto engañará a IE para que active la función .load () correctamente.

myImge = $("") .attr("src",anyDynamicSource+ "?" + new Date().getTime());

Ahora la función .load () funcionará, incluso en IE:

$(myImge).load(function() ( alert("will alert even in IE") ));
Consulte el primer comentario para ver una advertencia sobre el uso de esta técnica con una CDN.