• blocksit.js插件瀑布流


    blocksit.js插件瀑布流

    <!DOCTYPE html>
    <html>
    <head>
    <title>jQuery瀑布流插件BlocksIt </title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel='stylesheet' href='css/style.css' media='screen' />
    <script src="js/jquery.min.js"></script>
    <!--[if lt IE 9]>
    <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <script src="js/blocksit.min.js"></script>
    <script>
    $(document).ready(function() {
         
        
        //blocksit define
        $(window).load( function() {
            $('#container').BlocksIt({
                numOfCol: 5,
                offsetX: 8,
                offsetY: 8,
                blockElement: '.grid'
            });
        });
        
        //window resize
        var currentWidth = 1100;
        $(window).resize(function() {
            var winWidth = $(window).width();
            var conWidth;
            if(winWidth < 660) {
                conWidth = 440;
                col = 2
            } else if(winWidth < 880) {
                conWidth = 660;
                col = 3
            } else if(winWidth < 1100) {
                conWidth = 880;
                col = 4;
            } else {
                conWidth = 1100;
                col = 5;
            }
            
            if(conWidth != currentWidth) {
                currentWidth = conWidth;
                $('#container').width(conWidth);
                $('#container').BlocksIt({
                    numOfCol: col,
                    offsetX: 8,
                    offsetY: 8
                });
            }
        });
    });
    </script>
    
    </head>
    <body>
    <!-- Content -->
    <section id="wrapper">
        <hgroup>
            <h2>jQuery瀑布流布局插件BlocksIt</h2> 
            
        </hgroup>
    <div id="container">
        <div class="grid">
            <div class="imgholder">
                <img src="images/img27.jpg" />
            </div>
            <strong>Sunset Lake</strong>
            <p>A peaceful sunset view...</p>
            <div class="meta">by j osborn</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img26.jpg" />
            </div>
            <strong>Bridge to Heaven</strong>
            <p>Where is the bridge lead to?</p>
            <div class="meta">by SigitEko</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img15.jpg" />
            </div>
            <strong>Autumn</strong>
            <p>The fall of the tree...</p>
            <div class="meta">by Lars van de Goor</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img23.jpg" />
            </div>
            <strong>Winter Whisper</strong>
            <p>Winter feel...</p>
            <div class="meta">by Andrea Andrade</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img17.jpg" />
            </div>
            <strong>Light</strong>
            <p>The only shinning light...</p>
            <div class="meta">by Lars van de Goor</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img22.jpg" />
            </div>
            <strong>Rooster's Ranch</strong>
            <p>Rooster's ranch landscape...</p>
            <div class="meta">by Andrea Andrade</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img16.jpg" />
            </div>
            <strong>Autumn Light</strong>
            <p>Sun shinning into forest...</p>
            <div class="meta">by Lars van de Goor</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img21.jpg" />
            </div>
            <strong>Yellow cloudy</strong>
            <p>It is yellow cloudy...</p>
            <div class="meta">by Zsolt Zsigmond</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img28.jpg" />
            </div>
            <strong>Herringfleet Mill</strong>
            <p>Just a herringfleet mill...</p>
            <div class="meta">by Ian Flindt</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img2.jpg" />
            </div>
            <strong>Battle Field</strong>
            <p>Battle Field for you...</p>
            <div class="meta">by Andrea Andrade</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img24.jpg" />
            </div>
            <strong>Sundays Sunset</strong>
            <p>Beach view sunset...</p>
            <div class="meta">by Robert Strachan</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img19.jpg" />
            </div>
            <strong>Sun Flower</strong>
            <p>Good Morning Sun flower...</p>
            <div class="meta">by Zsolt Zsigmond</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img5.jpg" />
            </div>
            <strong>Beach</strong>
            <p>Something on beach...</p>
            <div class="meta">by unknown</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img25.jpg" />
            </div>
            <strong>Flowers</strong>
            <p>Hello flowers...</p>
            <div class="meta">by R A Stanley</div>
        </div>
        <div class="grid">
            <div class="imgholder">
                <img src="images/img20.jpg" />
            </div>
            <strong>Alone</strong>
            <p>Lonely plant...</p>
            <div class="meta">by Zsolt Zsigmond</div>
        </div> <!---->
    </div>
    </section>
    
    </body>
    </html>

    blocksit.js文件代码

    (function(a){var b={numOfCol:5,offsetX:5,offsetY:5,blockElement:"div"};var c,d;var e=[];if(!Array.prototype.indexOf){Array.prototype.indexOf=function(a){var b=this.length>>>0;var c=Number(arguments[1])||0;c=c<0?Math.ceil(c):Math.floor(c);if(c<0)c+=b;for(;c<b;c++){if(c in this&&this[c]===a)return c}return-1}}var f=function(){e=[];for(var a=0;a<b.numOfCol;a++){g("empty-"+a,a,0,1,-b.offsetY)}};var g=function(a,c,d,f,g){for(var h=0;h<f;h++){var i=new Object;i.x=c+h;i.size=f;i.endY=d+g+b.offsetY*2;e.push(i)}};var h=function(a,b){for(var c=0;c<b;c++){var d=i(a+c,"x");e.splice(d,1)}};var i=function(a,b){for(var c=0;c<e.length;c++){var d=e[c];if(b=="x"&&d.x==a){return c}else if(b=="endY"&&d.endY==a){return c}}};var j=function(a,b){var c=[];for(var d=0;d<b;d++){c.push(e[i(a+d,"x")].endY)}var f=Math.min.apply(Math,c);var g=Math.max.apply(Math,c);return[f,g,c.indexOf(f)]};var k=function(a){if(a>1){var b=e.length-a;var c=false;var d,f;for(var g=0;g<e.length;g++){var h=e[g];var i=h.x;if(i>=0&&i<=b){var k=j(i,a);if(!c){c=true;d=k;f=i}else{if(k[1]<d[1]){d=k;f=i}}}}return[f,d[1]]}else{d=j(0,e.length);return[d[2],d[0]]}};var l=function(a,c){if(!a.data("size")||a.data("size")<0){a.data("size",1)}else if(a.data("size")>b.numOfCol){a.data("size",b.numOfCol)}var e=k(a.data("size"));var f=d*a.data("size")-(a.outerWidth()-a.width());a.css({f-b.offsetX*2,left:e[0]*d,top:e[1],position:"absolute"});var i=a.outerHeight();h(e[0],a.data("size"));g(a.attr("id"),e[0],e[1],a.data("size"),i)};a.fn.BlocksIt=function(g){if(g&&typeof g==="object"){a.extend(b,g)}c=a(this);d=c.width()/b.numOfCol;f();c.children(b.blockElement).each(function(b){l(a(this),b)});var h=j(0,e.length);c.height(h[1]+b.offsetY);return this}})(jQuery)
  • 相关阅读:
    让一个不固定高度的div,保持垂直水平居中的方法
    Set、Map、WeakSet 和 WeakMap
    JS 中常用的 Math 方法
    不使用 new,创建一个实例对象
    做一个弹窗
    变量提升
    事件委托实践
    vue组件通信
    新版vue脚手架关闭eslint
    图片懒加载原生js实现
  • 原文地址:https://www.cnblogs.com/wzzl/p/4989190.html
Copyright © 2020-2023  润新知