lazyload的使用心得

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$("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张可见区域外的图片,以避免出现这个问题.
});

 

 

今天遇到一个问题,就是当加载的时候把enent改成click无效的问题,后面查明这个插件一定要是当前页面未显示的情况下才会执行,也就是说当打开网页的时候看不到的情况下才有效...

<!DOCTYPE html>
<html>

    <head>
        <meta charset="utf-8" />
        <title>This is a ajax test</title>
        <script type="text/javascript" src="js/jquery-3.1.1.js"></script>
        <script type="text/javascript" src="js/test_js.js"></script>
        <script type="text/javascript" src="js/jquery.lazyload.js"></script>
        <script type="text/javascript">
             $(function(){
                 $("img.lazy").lazyload({
                     placeholder : "img/viewphoto.jpg",     
                     effect: "fadeIn",
                     event:"click"
                 });
             });
        </script>
        <link rel="stylesheet" href="css/img.css" />
    </head>

    <body>
        <img class="lazy"  data-original="img/bmw_m1_hood.jpg" width="100px" height="100px">
        <img class="lazy"  data-original="img/bmw_m1_side.jpg" width="100px" height="100px">
        <img class="lazy"  data-original="img/viper_1.jpg" width="100px" height="100px">
        <img class="lazy"  data-original="img/viper_corner.jpg" width="100px" height="100px">
        <img class="lazy"  data-original="img/bmw_m3_gt.jpg" width="100px" height="100px">
        <img class="lazy"  data-original="img/corvette_pitstop.jpg" width="100px" height="100px">
    </body>

</html>


.lazy{
    margin-top: 1000px;
}

更多内容可以查看http://www.jq22.com/jquery-info390

 

一般异步加载图片可以采用ajax异步加载图片url,然后在给lazyload改变data-origin去实现

posted @ 2017-02-06 16:07  麦子TMAC  阅读(1732)  评论(0编辑  收藏  举报