现在在做一个滚动无限加载+图片淡入懒加载的图片列表效果,基本上效果是实现了,
但是有一个问题,就是每当加载出新图片之后,因为ajax成功返回数据后为了让新图片有懒加载效果,所以又执行了一次懒加载(如下代码),但这样却导致之前的旧图片(全部class="lazy"的图片)也重新执行了一次lazyload,致使现在每加载一次新数据,页面中的全部图片都淡入闪现一次,每加载一次就全都闪一次,体验很不好啊……
有没有什么解决办法呢?
$.ajax({
url:"__APP__/Goods/getMore",
type:"post",
data:dataString,
async:false,
dataType:"json",
success:function(msg){
var str ='<div class="item"><img class="ease-3 lazy" src="images/alpha.gif" data-original="images/'+msg.mainPicture+'"/></div>';
//新图追加到列表中
$('#list_pubu').append(str);
$("img.lazy").lazyload({
effect:'fadeIn' //懒加载淡入
})
}
$.ajax({
url:"__APP__/Goods/getMore",
type:"post",
data:dataString,
async:false,
dataType:"json",
success:function(msg){
var str ='<div class="item"><img class="ease-3 lazy" src="images/alpha.gif" data-original="images/'+msg.mainPicture+'"/></div>';
var $el = $(str);
//新图追加到列表中
$('#list_pubu').append($e);
// 限定 新的 `img.lazy` 元素才 `lazyload`
$("img.lazy", $e).lazyload({
effect:'fadeIn'
})
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。