$( window ).on( "load", function(){ waterfall(); }); function waterfall(){ var $aPin = $( "div.pin" ); var pinHArr=[];//用于存储 每列中的所有块框相加的高度。 $aPin.each( function( index, value ){ var pinH = $aPin.eq( index ).height(); if( index < 6 ){ pinHArr[ index ] = pinH; //第一行中的num个块框pin 先添加进数组pinHArr }else{ var minH = Math.min.apply( null, pinHArr );//数组pinHArr中的最小值minH var minHIndex = $.inArray( minH, pinHArr ); $( value ).css({ 'position': 'absolute', 'top': minH + 15, 'left': $aPin.eq( minHIndex ).position().left }); pinHArr[ minHIndex ] += $aPin.eq( index ).height() + 15;//更新添加了块框后的列高 } }); }
$(window).on("load",function(){ waterfall(); }); function waterfall(){ var $aPin=$("div.pin"); var pinHArr=[]; $aPin.each(function(index,value){ var pinH=$aPin.eq(index).height(); if(index<6){ pinHArr[index]=pinH; }else{ var minH=Math.min.apply(null,pinHArr); var minHIndex=$.inArray(minH,pinHArr); $(value).css({ 'position': 'absolute', 'top': minH+15, 'left': $aPin.eq(minHIndex).position().left }); pinH[minHIndex]+=$aPin.eq(index).height()+15; } }); }
自己找到了,20行数组名写错......