1.可视化窗口以外的图片不会被加载,直到用户滚动到他们所在的区域。
2.引入jquery
<script src="js/jquery1.12.4.min.js"></script>
引入Unveil
<script src="js/jquery.unveil.js"></script>
3.给需要懒加载的元素绑定事件
$(function() {
// 页面滚动到距离图片-100位置就开始加载,如图片在1000px,则滚动页面到900时开始加载图片,可以为负数
$(".unveil-img").unveil(100);
});
4.动画懒记载
<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
li { height: 1270px; }
img {
opacity: 0;
-webkit-transition: all 1s;
transition: all 1s;
-webkit-transform: translate3d(500px, 0, 0);
transform: translate3d(500px, 0, 0);
}
img.active {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
</style>
</head>
<body>
<ul>
<li><img class="unveil-img" data-src="images/bg_01.png"></li>
<li><img class="unveil-img" data-src="images/bg_02.png"></li>
<li><img class="unveil-img" data-src="images/bg_03.png"></li>
<li><img class="unveil-img" data-src="images/bg_04.png"></li>
<li><img class="unveil-img" data-src="images/bg_05.png"></li>
</ul>
<script src="js/jquery1.12.4.min.js"></script>
<script src="js/jquery.unveil.js"></script>
<script>
$(function() {
$(".unveil-img").unveil(0, function() {
$(this).load(function() {
// 图片加载完成给这张图片加上 .active 类,通过这个类来控制动画过渡
this.classList.add('active');
});
});
});
</script>
</body>
</html>