jQuery實(shí)現(xiàn)瀑布流的簡(jiǎn)單Demo

一与境、Html布局
<div id="main">
    <div class="box">
      <div class="pic">
        ![](images.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](mingo.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](ace.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](images.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](mingo.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](ace.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](mingo.jpg)
      </div>
    </div>
    <div class="box">
      <div class="pic">
        ![](ace.jpg)
      </div>
    </div>
  </div>
二兰珍、Css樣式
<style>
  *{
    margin:0;
    padding: 0;
  }
  #main{
    position: relative;
  }
  .box{
    padding: 15px 0 0 15px;
    float: left;
  }
  .pic{
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow:0 0 5px #ccc;
  }
  .pic img{
    width: 320px;
    height: auto;
  }
</style>
三洞拨、Js部分
$(window).on('load',function(){
    waterfall();
    $(window).on('scroll',function(){
      var dataInt = {"data":[{"src":"images.jpg"},{"src":"ace.jpg"},{"src":"mingo.jpg"}]};
      if(checkScrollSide){
        $.each(dataInt.data,function(key,val){
          var oBox = $('<div>').addClass('box').appendTo($('#main'));
          var oPic = $('<div>').addClass('pic').appendTo($(oBox));
          $('<img>').attr("src",$(val).attr('src')).appendTo($(oPic));
        })
        waterfall();
      }
    })
  })
  function waterfall(){
    var $boxs = $("#main>div");//找到main下面的圖片盒子
    var w = $boxs.eq(0).outerWidth();//圖片盒子寬
    var cols = Math.floor($(window).width()/w);//列數(shù)
    $("main").width(w*cols).css("margin","0 auto");
    var hArr = [];
    $boxs.each(function(index,val) {
      console.log(val)
      var h = $boxs.eq(index).outerHeight();
        if(index<cols){
          hArr[index] = h;
        }else{
          var minH = Math.min.apply(null,hArr);
          var minHIndex = $.inArray(minH,hArr);//獲取高度最低的圖片盒子的索引值
          $value = $(val);//將Dom對(duì)象轉(zhuǎn)成jQuery對(duì)象
          $value.css({
            'position':'absolute',
            'top':minH+'px',
            'left':minHIndex*w + 'px'
          })
          hArr[minHIndex] += $boxs.eq(index).outerHeight();
        }
    });
  }
  function checkScrollSide(){
    var $lastBox = $("#main>div").last();
    var laseBoxDis = $lastBox.offset().top+Math.floor($lastBox.outerHeight()/2);
    var scrollTop = $(window).scrollTop();
    var documentH = $(window).height();
    return (lastBoxDis < scrollTop+documentH)?true:false;
  }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末剧劝,一起剝皮案震驚了整個(gè)濱河市雁芙,隨后出現(xiàn)的幾起案子戒悠,更是在濱河造成了極大的恐慌熬荆,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绸狐,死亡現(xiàn)場(chǎng)離奇詭異卤恳,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)寒矿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門突琳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人劫窒,你說我怎么就攤上這事本今。” “怎么了主巍?”我有些...
    開封第一講書人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵冠息,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我孕索,道長(zhǎng)逛艰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任搞旭,我火速辦了婚禮散怖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘肄渗。我一直安慰自己镇眷,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開白布翎嫡。 她就那樣靜靜地躺著欠动,像睡著了一般。 火紅的嫁衣襯著肌膚如雪惑申。 梳的紋絲不亂的頭發(fā)上具伍,一...
    開封第一講書人閱讀 49,007評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音圈驼,去河邊找鬼人芽。 笑死,一個(gè)胖子當(dāng)著我的面吹牛绩脆,可吹牛的內(nèi)容都是我干的萤厅。 我是一名探鬼主播橄抹,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼祈坠!你這毒婦竟也來了害碾?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤赦拘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后芬沉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體躺同,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年丸逸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蹋艺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡黄刚,死狀恐怖捎谨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情憔维,我是刑警寧澤涛救,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站业扒,受9級(jí)特大地震影響检吆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜程储,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一蹭沛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧章鲤,春花似錦摊灭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至集嵌,卻和暖如春萝挤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背根欧。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工怜珍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人凤粗。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓酥泛,卻偏偏與公主長(zhǎng)得像今豆,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子柔袁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案呆躲? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,728評(píng)論 1 92
  • 一:在制作一個(gè)Web應(yīng)用或Web站點(diǎn)的過程中,你是如何考慮他的UI捶索、安全性插掂、高性能、SEO腥例、可維護(hù)性以及技術(shù)因素的...
    Arno_z閱讀 1,138評(píng)論 0 1
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,501評(píng)論 25 707
  • 很多時(shí)候“優(yōu)秀”對(duì)我們來說就是一個(gè)抽象的概念辅甥,沒有一個(gè)人知道它的準(zhǔn)則,可是我們又無比的渴望得到它燎竖。 ...
    zaki1111閱讀 271評(píng)論 0 0
  • 公司要裝修璃弄,但是裝修方案來回折騰了快半個(gè)月,換了4次設(shè)計(jì)方案构回,總感覺哪里不對(duì)勁夏块,沒找到那種讓自己眼前一亮,又愿意靜...
    張皓源閱讀 302評(píng)論 0 0