87,993
社区成员
发帖
与我相关
我的任务
分享


<script type="text/javascript" data-src="lazyload">
!function(){
function getAbsPoint(e)
{
var x = e.offsetLeft;
var y = e.offsetTop;
while(e = e.offsetParent)
{
x += e.offsetLeft;
y += e.offsetTop;
}
return {'x': x, 'y': y};
};
var imgs = document.getElementsByTagName("img");
var num = imgs.length;
var n = 0; //存储图片加载到的位置,避免每次都从第一张图片开始遍历
lazyload(); //页面载入完毕加载可是区域内的图片
window.onscroll = lazyload;
function lazyload() { //监听页面滚动事件
//console.log("aaa");
var seeHeight = document.documentElement.clientHeight; //可见区域高度
//console.log(seeHeight);
var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; //滚动条距离顶部高度
//console.log(scrollTop);
for (var i = n; i < num; i++) {
if (getAbsPoint(imgs[i]).y < seeHeight + scrollTop) {
if (imgs[i].getAttribute("src") == "") {
imgs[i].src = imgs[i].getAttribute("data-src");
}
n = i + 1;
}
}
}
}();
</script>


