zoukankan      html  css  js  c++  java
  • 前端模拟5页瀑布流加载

    html:

     1 <div id="masonry" class="container-fluid">
     2     <div class="box"><img src="../../img/test/wty1.png"></div>
     3     <div class="box"><img src="../../img/test/wty2.png"></div>
     4     <div class="box"><img src="../../img/test/wty3.png"></div>
     5     <div class="box"><img src="../../img/test/wty4.png"></div>
     6     <div class="box"><img src="../../img/test/wty5.png"></div>
     7     <div class="box"><img src="../../img/test/wty1.png"></div>
     8     <div class="box"><img src="../../img/test/wty2.png"></div>
     9     <div class="box"><img src="../../img/test/wty3.png"></div>
    10     <div class="box"><img src="../../img/test/wty4.png"></div>
    11     <div class="box"><img src="../../img/test/wty5.png"></div>
    12     <div class="box"><img src="../../img/test/wty1.png"></div>
    13     <div class="box"><img src="../../img/test/wty2.png"></div>
    14     <div class="box"><img src="../../img/test/wty3.png"></div>
    15     <div class="box"><img src="../../img/test/wty4.png"></div>
    16     <div class="box"><img src="../../img/test/wty5.png"></div>
    17 </div>

    css:

    .container-fluid {
                padding: 20px;
    }
    .box {
               margin-bottom: 20px;
               float: left;
               width: 220px;
    }
    .box img {
               max-width: 100%
    }

    js:

    // 瀑布流布局
        /**
         * 原理
         * // 当滚动到最底部以上100像素时, 加载新内容
         * $(document).height() - $(this).scrollTop() - $(this).height()<100
         *
         */
        var $container = $('#masonry');
        $container.imagesLoaded(function() {
            $container.masonry({
                itemSelector: '.box',
                gutter: 20,
                isAnimated: true
            });
    
        });
    
        /*
         <div id="masonry" class="container-fluid">
             <div class="box"><img src="../../img/test/wty1.png"></div>
             <div class="box"><img src="../../img/test/wty2.png"></div>
             <div class="box"><img src="../../img/test/wty3.png"></div>
             <div class="box"><img src="../../img/test/wty4.png"></div>
             <div class="box"><img src="../../img/test/wty5.png"></div>
         </div>
         * */
    
        var content = '<div class="box"><img src="../../img/test/wty1.png"></div>' +
            '<div class="box"><img src="../../img/test/wty2.png"></div>' +
            '<div class="box"><img src="../../img/test/wty3.png"></div>' +
            '<div class="box"><img src="../../img/test/wty4.png"></div>' +
            '<div class="box"><img src="../../img/test/wty5.png"></div>';
        var $content = $(content);
        var $content2 = $(content);
        var $content3 = $(content);
        var $content4 = $(content);
        var $content5 = $(content);
    
    
        /*$('#add').on('click', function () {
            $container.append($content).masonry('appended', $content);
        });*/
    
        var count = 0;
    
        $(window).on('scroll', function () {
            var _winThis = $(this);
            var _winScrollTop = _winThis.scrollTop();
            var _docHeight = $(document).height();
            var _winHeight = _winThis.height();
    
            if(_winScrollTop + _winHeight == _docHeight){
                //拉到页面的最底部了
                if(count < 5) {
                    //$container.append($content).masonry('appended', $content);
                    count++;
                    //console.log(count);
    
                    switch (count) {
                        case 1:
                            $container.append($content).masonry('appended', $content);
                            break;
                        case 2:
                            $container.append($content2).masonry('appended', $content2);
                            break;
                        case 3:
                            $container.append($content3).masonry('appended', $content3);
                            break;
                        case 4:
                            $container.append($content4).masonry('appended', $content4);
                            break;
                        case 5:
                            $container.append($content5).masonry('appended', $content5);
                            break;
                    }
                }else {
                    count = 10;
                }
            }
    
        });

    特别注意:瀑布流这个插件,append()方法里不能有括号,不识别!!!

  • 相关阅读:
    mac下进行配置android真机调试环境
    给技术人上的管理课:控制和计划
    PNG 文件结构
    BMP文件结构
    开发环境FAQ
    VS2008通过 map 和 cod 文件定位崩溃代码行
    【Demo 0009】Android 组件(BroadcastReceiver)
    【Demo 0007】Android 信使(Intent)
    【Demo 0006】Android 组件(Activity)
    使用Topshelf 5步创建Windows 服务
  • 原文地址:https://www.cnblogs.com/lqcdsns/p/5738937.html
Copyright © 2011-2022 走看看