js图片加载优化之----懒加载

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/KungLun/article/details/81517587

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<style type="text/css">

img{

width: 1000px;

height: 600px;

margin-left: 10px;

border: 1px solid #000;

}

</style>

<script type="text/javascript">

function getPos(obj){

var l = 0;

var t = 0;

while(obj){

l += obj.offsetLeft;

t += obj.offsetTop;

obj = obj.offsetParent;

}

return {left:l ,top : t}

}

window.onload = window.onscroll = function(){

//获取到img

var aImg = document.getElementsByTagName("img");

//获取到它的scrollTop 值 考虑兼容问题

var oScrollTop = document.documentElement.scrollTop || document.body.scrollTop;

// clientHeight = 上下padding + height

var clientH = document.documentElement.clientHeight;

//循环遍历每一项通过调用获取到每一个i 项对象的top 值

for (var i = 0;i<aImg.length;i++) {

var aImgTop = getPos(aImg[i]).top;

// 当滚动的时候进行判断,看他的滚动的高度加上它的clientHeight 是否比它的 top 值大

// 如果大或等于说明滚动到当前位置可以加载图片

if (oScrollTop + clientH >= aImgTop) {

// 进行图片的加载

aImg[i].src = aImg[i].getAttribute("_src");

}

}

}

</script>

</head>

<body>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

<img _src="1.jpg"/>

<img _src="2.jpg"/>

<img _src="3.jpg"/>

</body>

</html>

引用:https://www.jb51.net/article/118807.htm

猜你喜欢

转载自blog.csdn.net/KungLun/article/details/81517587