Estoy usando el complemento Lazy Load de Mika Tuupola http://www.appelsiini.net/projects/lazyload para retrasar la carga de imágenes a medida que se desplaza hacia abajo en una galería de imágenes larga. El problema es después de 10 imágenes, utilizo el desplazamiento infinito, así que tomo las siguientes 10 imágenes y las anexo a través de ajax. Lazy Lazy ya no funciona en este próximo lote de imágenes adjuntas.Imagen de encuadernación cargada de carga a las imágenes nuevas insertadas después de la solicitud de ajax
Es una bonita galería de imágenes de javascript, así que para todo lo demás (como información sobre herramientas, superposiciones modales, etc.) he estado utilizando el delegado de jQuery() para enlazar elementos ajax-insertados. El problema con el complemento Lazy Load es que no estoy seguro de a qué vincular el evento .
Digamos que quiero cargar fotos cargadas con una clase de "perezoso". Me gustaría escribir esto:
$("img.lazy").lazyload({
effect: "fadeIn"
});
y funciona durante las primeras 10 imágenes, pero deja de funcionar después de insertar más a través de ajax. Lo único que se me ocurre es utilizar delegado en un eventode carga, así:
$(document).delegate("img.lazy", "load", function(event) {
$(this).lazyload({
effect: "fadeIn"
});
});
pero que rompe todo. Gracias!
EDIT: El jQuery I utilizar para cargar más registros (esta es una aplicación Rails):
$(window).scroll(function() {
var url;
url = $(".pagination .next_page").attr("href");
if (url && $(window).scrollTop() > $(document).height() - $(window).height() - 50) {
$(".pagination").html("<p>loading more images...</p>");
return $.getScript(url);
}
});
$(window).scroll();
han intentado .en? – Fresheyeball
@Fresheyeball .on ¿con qué evento? Eso es lo que está preguntando. –
¿por qué no intentar usar '.on' en lazyload? ¿No funcionaría eso? – rgin