$(window).ready(function(){ waterfall(); var dataInt={'data':[{'src':'1.jpg'},{'src':'2.jpg'},{'src':'3.jpg'},{'src':'4.jpg'}]}; window.onscroll=function(){ if(checkscrollside()){ $.each( dataInt.data, function( index, value ){ var $oPin = $('<div>').addClass('pin').appendTo( $( "#main" ) ); var $oBox = $('<div>').addClass('box').appendTo( $oPin ); $('<img>').attr('src','./images/p_0' + $( value).attr( 'src') ).appendTo($oBox); }); waterfall(); }; } }); var waterfall=function(){ var $pin=$("#main>.pin"); var pinwidth=$pin.eq(0).outerWidth(); var li=Math.floor($(window).width() / pinwidth); $("#main").css({ 'width': pinwidth*li, 'margin': '0 auto' }); var arry= []; $pin.each(function(a,b){ var liheight=$pin.eq(a).outerHeight(); if(a<li){ arry[a]=liheight; } else{ var limin=Math.min.apply(null, arry); var liindex=$.inArray(limin,arry); $( b).css({ 'position': 'absolute', 'top': limin , 'left': $pin.eq( liindex).position().left }); arry[liindex]+=$pin.eq(a).outerHeight();//arry[liindex]+=$pin.eq(b).outerHeight(); } }); } function checkscrollside(){ var $Pin = $( "#main>div" ); var lastPinH = $Pin.last().get(0).offsetTop + Math.floor($Pin.last().height()/2); var scrollTop = $( window ).scrollTop() var documentH = $( document ).width(); return (lastPinH < scrollTop + documentH ) ? true : false; }
$(window).ready(function
()
$(window).on('load',function() //刷新以后会重新加载 所以要用load