jQuery實現瀑布流布局

2021-10-07 18:27:29 字數 1234 閱讀 8175

瀑布流布局要求要進行布置的元素等寬

計算瀏覽器寬度與元素的寬度之比,得到列數

建立陣列,儲存每列元素總高度

each遍歷迴圈各個,判斷是否為第一排,若是,則將元素高度直接加入陣列中,若不是,則定位布置到高度最小的一列,同時更新當前列的總高度。

在jquery中,四種寬度

this is a paragraph.

輸出高度

元素css為

position:absolute;

left:最小高度盒子的索引*盒子的寬度

top:最小盒子的高度

求最小盒子高度,即獲取陣列中的最小值,利用math.min方法獲取最小值。但我們知道math.min()引數不能為陣列,而為序列。於是利用es6中的擴張運算子…轉換。**如下:

//最小高度,求陣列中的最小值

var minboxheight=math.min(...heightarr);

求陣列中最小值的索引,利用jquery中的inarrays(查詢的值,陣列)方法返回查詢值所的索引,如果不存在則返回-1。

//最小的索引,$.inarray()用於查詢對應陣列中指定值的索引。(未匹配成功的話,返回-1)

var minboxindex=$.inarray(minboxheight,heightarr)

最後定位布置,高度追加

var minboxindex=$.inarray(minboxheight,heightarr)

$(item).css()

//高度追加

heightarr[minboxindex]+=boxheight;

// $(function())//dom元素載入完就執行js

$(window).on('load',function())//等到dom元素,,內容都載入完才會執行js

function wate***ll()

else)

//高度追加

heightarr[minboxindex]+=boxheight;}})

}

jQuery實現簡單瀑布流布局

最近正在實習,痛苦的實習日子,不過學到了超多。前幾天剛好在做網頁的瀑布流布局,本來使用的是masonry.js外掛程式,但倒霉的是這個外掛程式對jquery版本有所限制,公司模板使用的是2.1.0,然而mosonry並不理會這的版本的jquery,任性的很。無奈之下,用高版本jquery進行替換,結...

實現瀑布流布局

瀑布流,又稱瀑布流式布局。是比較流行的一種 頁面布局,視覺表現為參差不齊的多欄布局,隨著頁面滾動條向下滾動,這種布局還會不斷載入資料塊並附加至當前尾部,瀑布流的主要特性便是錯落有致,定寬而不定高的設計讓頁面區別於傳統的矩陣式布局模式。主體思路是記錄每一列的高度,父容器相對定位,成員絕對定位,利用to...

jQuery實現動態瀑布流布局效果

今天在tumblr上看到其瀑布流布局,如下圖,覺得很有意思便研究了下,發現tumblr使用position absolute布局的。結構很簡單,具體請參考底部的例項。先上全部js function items var itemwidth 320 var itemtpl tpl falls item ...