2 回答
TA贡献1825条经验 获得超4个赞
lazyload是一个插件功能,不能一个事件~,所以不存在委托什么的
你可以在批量添加完一批图片时,统一的添加上一个自定义的标识类
例如.watched,避免已经被lazyload标识过的被再次lazyload.
可能这个特性在lazyload中已经存在,我相应会有的
然后通过
$(".img.lazy:not(.watched)").lazyload({
effect : "fadeIn"
});
lazyLoad基本上使用如下方法实现
function lazyLoad(imgDOM,resultCallback){
var imgSrc,tempImg;
if($(imgDOM).hasClass("watched")||$(imgDOM).attr("data-loaded")==="done"){
return;
}
imgSrc=$(imgDOM).attr("data-origin-src");
tempImg=new Image();
tempImg.onload=function(){
$(imgDOM).attr("src",imgSrc);
$(imgDOM).attr("data-loaded","done");
doneFlag=true;
resultCallback&&resultCallback.apply(imgDOM,[]);
tempImg=null;
}
tempImg.src=imgSrc;
}
添加回答
举报