图片延迟加载插件lazyload使用

阅读 14

2024-02-07

图片懒加载,又称图片延时加载、惰性加载,即在用户需要使用图片的时候才加载。这种技术的主要好处包括:

  1. 优化页面加载速度:在页面被请求时,只加载可视区域的图片,其它部分的图片则不加载,只有当这些图片出现在可视区域时才会动态加载。这样可以减少首次加载时需要加载的内容量,显著提高页面加载速度,从而提升用户体验。
  2. 节省网络流量:图片懒加载可以在需要时才加载图片,避免了不必要的图片加载和传输。这对于数据流量有限或网络状况较差的用户来说,可以显著节省网络流量,提高用户体验。
  3. 降低服务器压力:如果页面上所有图片都在首次加载时加载,将会导致大量的网络请求,造成较大的带宽消耗和服务器压力。而使用图片懒加载后,只有在用户需要时才会加载图片,减少了网络请求,降低了带宽消耗和服务器压力。
  4. 提高缓存利用率:通过图片懒加载,可以将已加载的图片存储在本地或离线缓存中,以便在后续访问时直接使用,而不需要重新加载。这可以提高缓存利用率,减少网络请求次数,进一步提高性能和用户体验。
  5. 减少页面内存消耗:如果页面上所有图片都在首次加载时加载,将会导致大量的内存消耗,影响页面性能。而使用图片懒加载后,只有在用户需要时才会加载图片,减少了内存消耗,提高了页面性能。

因此,图片懒加载是一种有效的优化网页性能和提高用户体验的技术。在实际应用中,可以根据具体需求和场景选择是否使用图片懒加载。


lazyload简介:懒加载,当滚动到图片位置时再开始进行加载

git地址:https://github.com/tuupola/lazyload.git

这里我用到的是1.9.7版本,cdn地址如下:

<script src="https://cdn.bootcss.com/jquery_lazyload/1.9.7/jquery.lazyload.min.js"></script>

使用方法:

引用jquery和jquery.lazyload.js到你的页面

<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
 <script src="https://cdn.bootcss.com/jquery_lazyload/1.9.7/jquery.lazyload.min.js"></script>

html图片调用方法

为图片加入样式lazy  图片路径引用方法用data-original

<img class="lazy" data-original="1.jpg">
 <img class="lazy" data-original="2.jpg">
 <img class="lazy" data-original="3.jpg">
 <img class="lazy" data-original="4.jpg">
 <img class="lazy" data-original="5.jpg">
 <img class="lazy" data-original="6.jpg">

js出始化lazyload并设置图片显示方式

$(function(){
 	$('img.lazy').lazyload({
 		effect:"fadeIn",
 		//threshold:180,        //在图片距离屏幕180px时提前加载
 	});
 });

可选参数

$("img.lazy").lazyload({
   placeholder : "img/grey.gif", //用图片提前占位
     // placeholder,值为某一图片路径.此图片用来占据将要加载的图片的位置,待图片加载时,占位图则会隐藏
   effect: "fadeIn", // 载入使用何种效果
     // effect(特效),值有show(直接显示),fadeIn(淡入),slideDown(下拉)等,常用fadeIn
   threshold: 200, // 提前开始加载
     // threshold,值为数字,代表页面高度.如设置为200,表示滚动条在离目标位置还有200的高度时就开始加载图片,可以做到不让用户察觉
   event: 'click',  // 事件触发时才加载
     // event,值有click(点击),mouseover(鼠标划过),sporty(运动的),foobar(…).可以实现鼠标莫过或点击图片才开始加载,后两个值未测试…
   container: $("#container"),  // 对某容器中的图片实现效果
     // container,值为某容器.lazyload默认在拉动浏览器滚动条时生效,这个参数可以让你在拉动某DIV的滚动条时依次加载其中的图片
   failurelimit : 10 // 图片排序混乱时
      // failurelimit,值为数字.lazyload默认在找到第一张不在可见区域里的图片时则不再继续加载,但当HTML容器混乱的时候可能出现可见区域内图片并没加载出来的情况,failurelimit意在加载N张可见区域外的图片,以避免出现这个问题.
 });

 

精彩评论(0)

0 0 举报