一个页面都是img,宽度100%,高度自适应,那么页面初始化的时候图片还没有加载进来,所以img都是在可见区域内的,这个时候就一次性加载出来了。我后来判断等上一张加载出来再去获取下一张的offsetTop高度,可是我发现这样反而慢。有什么解决方法吗?
一个页面都是img,宽度100%,高度自适应,那么页面初始化的时候图片还没有加载进来,所以img都是在可见区域内的,这个时候就一次性加载出来了。我后来判断等上一张加载出来再去获取下一张的offsetTop高度,可是我发现这样反而慢。有什么解决方法吗?
试试有序加载呢 按照图片数组中的顺序依次加载
`
Preload.prototype._ordered=function () {
var opts=this.opts,
imgs=this.imgs,
len=imgs.length,
count=0;
load();
function load() {
var imgObj=new Image();
$(imgObj).on('load error',function () {
opts.each&&opts.each(count)
if(count>=len){
//所有图片已经加载完毕
opts.all&opts.all()
}
else{
load()
}
count++;
});
imgObj.src=imgs[count];
}
};`
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
参考下这个
http://plugins.jquery.com/laz...