Digamos que tenemos una presentación de diapositivas de imágenes. las miniaturas de esas imágenes se muestran en envoltorio div con un control deslizante (que he creado con Jquery) y cada imagen se incluye en un <li>
con un conjunto de fondos CSS, que por supuesto representa la imagen. Elegí usar una imagen de fondo para un tema de diseño porque todos son diferentes en tamaño y relación de aspecto.espere hasta que se carguen las imágenes en segundo plano (css)
Las imágenes provienen de un archivo db y se crean dinámicamente.
Lo que yo quiero hacer es:
muestran un mensaje de "carga" sobre cada <li>
y esperar hasta que el fondo (imagen) se carga en la memoria caché y luego lo muestran con una fadeIn. La única forma que se me ocurre (no es que pueda, ya que no soy muy seguro de cómo y si es factible) es:
- temporalmente desarmar el fondo para cada
<li>
mientras muestra el mensaje "carga" - hacer un bucle para cada fondo para obtener el URL de la imagen
- utilizar la función $ .get para cargarlo y luego hacer lo que quiera después de cargar
al lado de lo factible, esto implicaría que cargarían en secuencia, por lo que si uno no se carga por algunos reas en el guión nunca continuará!
He visto algunos sitios que usan JS para cargar imágenes solo cuando es visible por el navegador, tal vez este podría ser el mismo caso que estoy buscando, ya que estoy usando un scroller y solo una parte del las imágenes se muestran a la vez y cuando la página carga
¿ha pensado en usar un sprite ?, por lo que solo tiene que cargar 1 imagen en el DOM y luego se recorta cada imagen, simplificará la vida, simplemente cargue el evento onload de la hoja css para la imagen sprite y luego simplemente muestre el cargador para todos los elementos hasta que se cargue la hoja CSS. – RobertPitt
no es posible, las imágenes provienen de un DB –