图片懒加载:jquery && jquery-lazyloadjavascript
图片懒加载是一种前端性能优化方案:随着视图区的滚动,加载剩下的图片,这样当滚动条没有滚动到下面的时候,图片不加载,减小资源浪费前端
本来:<img src="images/img1.jpg" >java
懒加载:<img class="lazy" data-original="images/img1.jpg" >jquery
<script type="text/javascript" src="js/jquery.min.js"></script>浏览器
<script type="text/javascript" src="js/jquery-lazyload.min.js"></script>性能优化
<script>bash
$(function() { 前端性能
$('img.lazy').lazyload();布局
})性能
</script>
注意:对于须要懒加载的图片须要提早设置好大小,不然懒加载功能无效
懒加载还能够设置一些参数来达到炫酷的效果:
默认时未加载的图片是一块灰色背景板,经过该placeholder能够设置默认图片占位,可对比相似input的placeholder
默认状况下,图片出如今视图区的时候就直接加载,而咱们能够经过设置事件触发来让图片在某种特定事件中加载,如上例event: "click"的设置会当咱们点击图片时图片才加载
默认状况下,图片会以show()的动画效果加载出来,咱们能够经过设置effect参数让图片以咱们想要的效果出现,如上例effect: "fadeIn"的设置会使图片渐进加载出来
以上的例子中咱们默认图片文档流在整个浏览器窗口下,视图的延伸改变是经过浏览器滚动条来拖动,而经过container参数咱们能够设置固定容器,让图片在设置的容器中懒加载,如上例,此时咱们须要设置容器的大小,并容许容器溢出滚动
文档流中的图片并非全部都是visible的,对于invisible的图片,压根不须要加载,更不须要懒加载,经过设置skip_invisible: true能够跳过invisible的图片不加载