In diesem Artikel wird hauptsächlich ein Beispiel für die Implementierung eines supereinfachen Wasserfall-Flow-Layouts durch JQuery vorgestellt. Der Code ist einfach und leicht zu ändern. Werfen wir einen Blick mit dem folgenden Editor. Ich hoffe, er kann allen helfen.
1. Schauen Sie sich die Wirkung an!
2.html Code index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> ul{position: relative;padding: 0 -3px;list-style: none;width: 600px;margin: 0 auto} li{width: 33.33%;position: absolute;box-sizing: border-box;display: block; } img{width: 100%;height: auto;display: block;} </style> <script src="./jquery-1.12.4.min.js"></script> </head> <body style="background: #000"> <ul class="flowLayout-box"> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u17.png" alt=""></li> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u19.png" alt=""></li> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u114.png" alt=""></li> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u116.png" alt=""></li> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u118.png" alt=""></li> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u120.png" alt=""></li> <li class="flowLayout-item"> <img class="flowLayout-pic" src="./img/u132.png" alt=""></li> </ul> </body> </html>
3. Plug-in-Code
(function ($) { $.fn.flowLayout = function(options) { var dft = { gapWidth:16, //间隙 gapHeight:16, //间歇 column:3 //列 }; var ops = $.extend(dft,options); var _this = $(this); _this.width((_this.parents('.flowLayout-box').width()-2*ops.gapWidth)/3) var _pWidth=_this.parents('.flowLayout-box').width(); $(".flowLayout-box").css({ 'opacity':0 }); var columnHeight=[],columnIndex=0; for (var i=0 ;i<ops.column;i++){ columnHeight.push(0); } setTimeout(function () { for(var j =0 ; j< _this.length ;j++){ console.log(columnHeight[columnIndex]); $(_this).eq(j).css({ 'top':columnHeight[columnIndex]+ops.gapHeight+'px', 'left':_pWidth*columnIndex/3+'px' }) columnHeight[columnIndex]+=$(_this).eq(j).height()+ops.gapHeight columnIndex=getIndex(); } },50) function getIndex() { var columnIndex=0,maxHeight=0; for(var i =0 ;i < columnHeight.length ;i++){ if(columnHeight[i]<columnHeight[columnIndex]){ columnIndex=i; } if(columnHeight[i]>maxHeight){ maxHeight=columnHeight[i] } } $(".flowLayout-box").css({ 'opacity':1, 'height':maxHeight }); return columnIndex; } } })(jQuery);
4. Aufrufcode
$(function () { $('.flowLayout-box li').flowLayout({}); })
Der Code ist einfach und leicht zu ändern, verwenden Sie ihn einfach.
Verwandte Empfehlungen:
Detaillierte Erläuterung des Wasserfall-Flusslayouts von jQuery Masonry
JS-Implementierung eines Beispiels für ein Wasserfall-Flusslayout
JS-Implementierung einer Beispielanalyse für das Wasserfall-Flusslayout
Teilen von Videomaterial zum Wasserfall-Flusslayout
Verwendung von JavaScript zur Realisierung Wirkung des Wasserfall-Flow-Layout-Codes
Das obige ist der detaillierte Inhalt vonSupereinfache Implementierungsmethode für das Wasserfall-Flow-Layout. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!