亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

Jquery實現瀑布流布局(備有詳細注釋)

2019-11-20 11:56:52
字體:
來源:轉載
供稿:網友

本文實例講述了Jquery實現瀑布流布局的方法。分享給大家供大家參考。具體如下:

瀑布流布局最近真的很流行,很多人都跟我一樣想知道是怎么做出來的吧,經過網上搜索大量的參考結合N邊的實驗今天終于被我寫出來了,為了便于大家理解我使用了jQuery(當然用源生js代碼執行的效率會高一些,但是很多人多源生js不是很熟練)。

<!doctype html><html><head><meta charset="utf-8"><title>Jquery瀑布流布局(每行代碼都有詳細注釋)-作者:劉曉帆</title><style type="text/css">body, ul, li, h3 { margin: 0; padding: 0; list-style: none; font: bold 12px "微軟雅黑"; }/*瀑布流布局樣式*/#lxf-box { position: relative; }#lxf-box li { position: absolute; background: #fff; border: solid 1px #ccc; text-align: center; padding: 10px; left: 0px; top: 0; }h3 { padding-top: 8px; }img { width: 200px; height: auto; display: block; border: 0 }/*css3動畫*/li { -webkit-transition: all .7s ease-out .1s; -moz-transition: all .7s ease-out; -o-transition: all .7s ease-out .1s; transition: all .7s ease-out .1s }</style><script src="/js/jquery-1.6.4.min.js" type="text/javascript"></script></head><body><ul id="lxf-box"> <li><a href="/"><img src="/demo/waterfall/OLqypfV.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/msbvKWyQQzZuZy.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/WbWXwqpcxqcued.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/rabGVkIGq.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/rSmEiZGlAvvuZ.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/YewRtz.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/STVDndiZsIduZyLv.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/mWFuVrzCzpPdzdje.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/MsZvAyOFukxdzdjefXwi.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/OEycuedk.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/YwabRquVKrxd.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/+nwbuJpc.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/qymffF.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/DvKZdxCjtfqMv.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/SOmyOQZtlUfdzdjefXwi.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/REsUNXUvAkrdzdj.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/DQJwrFnDpgtdz.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/eJupzWlGPxz.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/IWpjipjp.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/OXsDgKacJeTdzdjefXwi.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/QPIzxiMkmlHdzdjefX.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/mrTNaJTaQyluZyLvvnWS.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/mqXLNuWiPrbdz.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/MiEJRJdimxPdzdjefXw.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/CczowVxqM.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/rabGVkIGq.jpg"></a> <h3>圖片標題</h3> </li> <li><a href="/"><img src="/demo/waterfall/zwPqjasxHYvdz.jpg"></a> <h3>圖片標題</h3> </li></ul><script>/*原理:1.把所有的li的高度值放到數組里面2.第一行的top都為03.計算高度值最小的值是哪個li4.把接下來的li放到那個li的下面*/var margin = 10;//這里設置間距var li=$("li");//這里是區塊名稱var  li_W = li[0].offsetWidth+margin;//取區塊的實際寬度(包含間距,這里使用源生的offsetWidth函數,不適用jQuery的width()函數是因為它不能取得實際寬度,例如元素內有pandding就不行了)function liuxiaofan(){//定義成函數便于調用  var h=[];//記錄區塊高度的數組  var n = document.documentElement.offsetWidth/li_W|0;  //窗口的寬度除以區塊寬度就是一行能放幾個區塊  for(var i = 0;i < li.length;i++) {//有多少個li就循環多少次    li_H = li[i].offsetHeight;//獲取每個li的高度    if(i < n) {//n是一行最多的li,所以小于n就是第一行了      h[i]=li_H;//把每個li放到數組里面      li.eq(i).css("top",0);//第一行的Li的top值為0      li.eq(i).css("left",i * li_W);      //第i個li的左坐標就是i*li的寬度      }    else{      min_H =Math.min.apply(null,h) ;//取得數組中的最小值,區塊中高度值最小的那個      minKey = getarraykey(h, min_H);//最小的值對應的指針      h[minKey] += li_H+margin ;//加上新高度后更新高度值      li.eq(i).css("top",min_H+margin);//先得到高度最小的Li,然后把接下來的li放到它的下面      li.eq(i).css("left",minKey * li_W);  //第i個li的左坐標就是i*li的寬度    }    $("h3").eq(i).text("編號:"+i+",高度:"+li_H);//把區塊的序號和它的高度值寫入對應的區塊H3標題里面  }}/* 使用for in運算返回數組中某一值的對應項數(比如算出最小的高度值是數組里面的第幾個) */function getarraykey(s, v) {for(k in s) {if(s[k] == v) {return k;}}}/*這里一定要用onload,因為圖片不加載完就不知道高度值*/window.onload = function() {liuxiaofan();};/*瀏覽器窗口改變時也運行函數*/window.onresize = function() {liuxiaofan();};</script></body></html>

希望本文所述對大家的jquery程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲成人av片| 国产成人综合一区二区三区| 97国产精品视频| xxx一区二区| 亚洲欧美在线第一页| 久久久国产91| 精品久久久久久久久久ntr影视| 亚洲性生活视频在线观看| 成人性生交xxxxx网站| 日韩欧美国产网站| 久久精品久久久久| 久久亚洲精品中文字幕冲田杏梨| 欧美亚州一区二区三区| 亚洲一区中文字幕在线观看| 欧美久久精品午夜青青大伊人| 91亚洲人电影| 国产精品高潮呻吟久久av野狼| 欧美亚洲另类激情另类| 亚洲欧洲日产国码av系列天堂| 欧美午夜精品久久久久久人妖| 疯狂做受xxxx欧美肥白少妇| 45www国产精品网站| 精品国模在线视频| 美日韩精品免费视频| 国内精品久久久久影院 日本资源| 亚洲天堂免费在线| 久久综合五月天| 日韩国产激情在线| 日韩av网址在线| 成人欧美在线观看| 国产欧美日韩免费看aⅴ视频| 久久噜噜噜精品国产亚洲综合| 久久精品99久久久香蕉| 精品久久久久久久大神国产| 日本成熟性欧美| 一级做a爰片久久毛片美女图片| 日韩有码在线电影| 91人人爽人人爽人人精88v| 91福利视频在线观看| 成人激情视频网| 68精品久久久久久欧美| 日韩精品免费视频| 国产又爽又黄的激情精品视频| 国产美女扒开尿口久久久| 爽爽爽爽爽爽爽成人免费观看| 热99精品只有里视频精品| 疯狂做受xxxx欧美肥白少妇| 成人97在线观看视频| 欧美巨猛xxxx猛交黑人97人| 亚洲人成绝费网站色www| 青青a在线精品免费观看| 91av在线精品| 日韩欧美在线免费| 国产偷亚洲偷欧美偷精品| 日韩一区二区精品视频| 日本精品久久久久久久| 国产精品欧美一区二区三区奶水| 国产精品永久在线| 欧美亚洲激情在线| 国产做受高潮69| 亚洲一区二区中文| 中文.日本.精品| 97国产精品免费视频| 国产亚洲欧洲在线| 91免费人成网站在线观看18| 欧美高清激情视频| 成人在线观看视频网站| 亚洲另类激情图| 欧美在线视频一二三| 欧美专区中文字幕| 精品久久久香蕉免费精品视频| 日韩小视频在线观看| 日韩在线视频中文字幕| 久久精品中文字幕一区| 亚洲自拍另类欧美丝袜| 国产欧美精品一区二区三区-老狼| 98视频在线噜噜噜国产| 美乳少妇欧美精品| 日本老师69xxx| 久久综合久久八八| 亚洲韩国欧洲国产日产av| 亚洲欧美激情另类校园| 992tv成人免费影院| 精品成人乱色一区二区| 亚洲国产精品久久久久秋霞蜜臀| 国产精品久久激情| 国产91在线高潮白浆在线观看| 精品国产一区av| 亚洲福利精品在线| 97久久精品人人澡人人爽缅北| 正在播放欧美一区| 在线观看欧美日韩| 国产一区二区动漫| 久久99久国产精品黄毛片入口| 91高潮精品免费porn| 在线观看欧美日韩| 国产+成+人+亚洲欧洲| 国产精品久久久久免费a∨大胸| 欧美日韩成人在线观看| 日本亚洲欧洲色| 91色p视频在线| 国产精品69精品一区二区三区| 国产欧美日韩专区发布| 黄色成人在线免费| 日本不卡高字幕在线2019| 亚洲欧美国产精品va在线观看| 日韩乱码在线视频| 精品久久香蕉国产线看观看亚洲| 91精品国产乱码久久久久久久久| 美女黄色丝袜一区| 亚洲欧美国产精品| 欧美高清不卡在线| 国产精品视频公开费视频| 久久精品99久久香蕉国产色戒| 欧美极品欧美精品欧美视频| 日韩精品中文字幕有码专区| 亚洲一级免费视频| 欧美最猛黑人xxxx黑人猛叫黄| 亚洲天堂第一页| 欧美极品少妇xxxxⅹ喷水| 日韩av免费看| 日韩欧美极品在线观看| 精品久久久久久久久久久久久| 综合久久五月天| 欧美性猛交xxxx乱大交| 亚洲福利精品在线| 亚洲人成电影在线播放| 精品亚洲男同gayvideo网站| 日韩美女视频免费看| 性色av一区二区三区红粉影视| 久久久久久有精品国产| 日韩网站免费观看高清| 91网在线免费观看| 欧美精品在线免费播放| 全球成人中文在线| 欧美性受xxxx黑人猛交| 社区色欧美激情 | 91久久中文字幕| 超薄丝袜一区二区| 欧美另类交人妖| 亚洲成成品网站| 亚洲va久久久噜噜噜久久天堂| 国产免费一区视频观看免费| 日韩欧美亚洲成人| 日韩在线免费视频| 久久久精品国产一区二区| 久久躁狠狠躁夜夜爽| 亚洲欧美激情四射在线日| 国产精品看片资源| 国产极品精品在线观看| 欧美与欧洲交xxxx免费观看| 国产精品91久久久| 亚洲欧美国产高清va在线播| 91色琪琪电影亚洲精品久久| 中文字幕一精品亚洲无线一区| 欧美性猛交xxxx| 国产午夜一区二区| 一区二区三区美女xx视频| 国产美女主播一区| 亚洲精品国产精品国自产观看浪潮| 在线成人一区二区| 欧洲美女7788成人免费视频| 亚洲美女av在线| 欧美日本啪啪无遮挡网站|