我在电子商务网站上使用了lazyload()。 lazyload()效果很好。我使用以下代码来做到这一点:
$(function(){
$("img.lazy").lazyload({
effect : "fadeIn"
});
});
也有一些过滤器,如颜色,价格等,运行一个ajax并显示新结果。当出现新结果时,lazyload()不起作用。我知道我必须将lazyload()与live(),delegate()或on()结合使用。但是我是jquery的新手,但我做不到。谁能帮我吗?我的jquery版本是1.7.2,我们可以使用on()。
最佳答案
注意:在接受此答案时,此方法有效。延迟加载插件已更改,现在已损坏。我不能不接受答案,也不能删除它。
还有另一项问答,建议将其作为AJAX请求的一部分处理,以负责插入其他DOM:
Binding image lazy loading to new images inserted after ajax request
但是,这就是我的方法:
$(document).on('DOMNodeInserted', 'img.lazy', function() {
$(this).lazyload({
effect: 'fadeIn'
});
});
演示:jsfiddle