zoukankan      html  css  js  c++  java
  • jQuery图片预加载(延迟加载)之插件Lazy Load

         Lazy Load也叫惰性加载,延迟加载,顾名思义,就是在图片未到达可视区域时,不加载图片,我们常常在很多的优秀网站上看到类似的例子,例如迅雷、土豆、优酷等,由于一个网页的图片非常多,一次性加载增加服务器压力,而且用户未必会拉到底部,浪费用户流量,Lazy Load采用按需加载,更快的加载速度从而达到优化网页的目的。

    如何使用

     1.HTML代码的底部包含jquery.lazyload.js和jquery.js

    <script src="jquery.js" type="text/javascript"></script>
    <script src="jquery.lazyload.js" type="text/javascript"></script>

    2.设置图片的占位符为data-original,给图片一个特别的标签,图片设置起来像这样:

    <img class="lazy" data-original="img/example.jpg" width="640" height="480">
    $(function(){
        $("img.lazy").lazyload();
    });

    注意:你必须给图片设置一个height和width,或者在CSS中定义,否则可能会影响到图片的显示。

    插件选项

     图片预先加载距离:threshold,通过设置这个值,在图片未出现在可视区域的顶部距离这个值时加载。默认为0,下面为设置threshold为200表示在图片距离可视区域还有200像素时加载。

    $("img.lazy").lazyload({
        threshold :200
    });

    事件绑定加载的方式:event,你可以使用jQuery的事件,例如“click”、“mouseover”,或者你也可以自定义事件,默认等待用户滚动,图片出现在可视区域。下面是使用click:

    $("img.lazy").lazyload({event:"click"});

    显示效果:effect,默认使用show(),你可以使用fadeIn(逐渐出现)方式,代码如下:

    $("img.lazy").lazyload({
        effect :"fadeIn"
    });

    对于禁用javascript的浏览器则要加上noscript内容:

    <img class="lazy" data-original="img/example.jpg" width="640" heigh="480">
    <noscript><img src="img/example.jpg" width="640" heigh="480"></noscript>

    图片限定在某个容器内:container,你可以通过限定某个容器内容的图片才会生效,代码如下:

    #container {
        height:600px;
        overflow: scroll;
    }
    $("img.lazy").lazyload({
         container: $("#container")
    });
  • 相关阅读:
    申通服务恶劣,开始忘本
    基础知识学习外部排序
    ToString()格式和用法大全
    Web.Config Transformation ASP.NET 4.0 新特性
    拒绝try.catch泛滥,学习委托有感
    Oracle Job定时任务的使用详解
    数据库和索引设计简要笔记
    Redis实际应用场景
    线程如何按照自己指定的顺序执行
    WCF 4.0 进阶系列 随笔汇总
  • 原文地址:https://www.cnblogs.com/zhaoqiming/p/8043693.html
Copyright © 2011-2022 走看看