zoukankan      html  css  js  c++  java
  • 关于前端惰性加载(jquery_lazyload)的使用和原理分析

    1.前言

    有时我们会有这样的需求,当网页有很多张图片的时候,我们不希望一次性就把图片加载完,而是希望当浏览器滑动到指定位置的时候再加载,这样可以节省带宽,它也能帮助减轻服务器负载。那么这种需求就需要利用lazyload了。

    jquery_lazyload.js是基于jq的一个扩展,需要引入jq后使用。

    2.使用方法

    2-1.引入jquery和lazyload拓展

    <script src="jquery-1.11.0.min.js"></script>
    <script src="jquery.lazyload.js?v=1.9.1"></script>

    2-2.通过class指定标签,src指定家在前的图片,data-original指定加载后的图片。

    <img class="lazy" src="img/jd.png" data-original="img/bmw_m1_hood.jpg">
    <img class="lazy" src="img/jd.png" data-original="img/bmw_m1_side.jpg">

    2-3.传递参数绑定lazyload事件

    <script type="text/javascript" charset="utf-8">
      $(function() {
          $("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张可见区域外的图片,以避免出现这个问题.
         });
     });
    </script>
  • 相关阅读:
    常用功能测试点的测试用例
    如何设计功能测试测试用例
    管理小原则
    政党提供的公共产品是其存在的依据
    为什么人是根本?
    学问总分类
    和孩子沟通的开头常用语
    教育的核心对象是心中的那枚种子
    用目标激发动力,用计划控制落实,用梳理总结进行提高
    要想影响孩子第一位的是保证沟通畅通
  • 原文地址:https://www.cnblogs.com/pcyy/p/7000408.html
Copyright © 2011-2022 走看看