参考此篇:https://segmentfault.com/a/1190000012621936

以下为个人测试中:

css:

.masonry{
  width:100%;
}
.item{
  position: absolute;
}
img{
  width: 100%;
}
.gap{
  width: 20px;
}
html:
<div class="masonrybox">
  <div class="masonry">
    <div class="item">
      <img class="lazy" src="http://img3.imgtn.bdimg.com/it/u=3820866398,3484834793&fm=26&gp=0.jpg" alt="" />
    </div>
    <div class="gap"></div>
    <div class="item">
      <img class="lazy" src="http://img0.imgtn.bdimg.com/it/u=612897915,2145385515&fm=26&gp=0.jpg" alt="" />
    </div>
    <div class="gap"></div>
    <div class="item">
      <img class="lazy" src="http://img1.imgtn.bdimg.com/it/u=963830906,168991667&fm=26&gp=0.jpg" alt="" />
    </div>
    <div class="item">
      <img class="lazy" src="http://img3.imgtn.bdimg.com/it/u=3745098494,888696443&fm=26&gp=0.jpg" alt="" />
    </div>
    <div class="gap"></div>
    <div class="item">
      <img class="lazy" src="http://img3.imgtn.bdimg.com/it/u=2142147217,643937300&fm=26&gp=0.jpg" alt="">
    </div>
    <div class="gap"></div>
    <div class="item">
      <img class="lazy" src="http://img0.imgtn.bdimg.com/it/u=2766297745,3964264989&fm=26&gp=0.jpg" alt="" />
    </div>
    <div class="gap"></div>
    <div class="item">
      <img class="lazy" src="http://img3.imgtn.bdimg.com/it/u=2941108349,3865760420&fm=26&gp=0.jpg" alt="" />
    </div>
  </div>
</div>
<script>
var scrrenWidth = $(".masonry").width();
var iw = (scrrenWidth-40)/3;
$(".item").css("width",iw);
 
 
function getCurrent(){
  var min = Math.min.apply(null, arr);
  $.each(arr,function(i){
    if(arr[i] == min){
    index = i;
    console.log(arr[i]);
    return false;
  }
})
 
}
var index = 0;
var arr = [];
var w = 0;
var leftNum = 0;
$.each($(".item"),function(i){
  w = $(this).width();
  if(i<3){
  leftNum = ($(".gap").width()+w)*i;
  arr.push( $(this).height());
}else{
  getCurrent();
  leftNum = ($(".gap").width()+w)*index;
  $(this).css("top",arr[index]+10);
  arr[index]+= $(this).height()+10;
}
  $(this).css("left",leftNum);
})
</script>

原生js实现瀑布流效果的更多相关文章

  1. 原生JS实现瀑布流

    浏览网页的时候经常会遇到瀑布流布局的网站.也许有些读者不了解瀑布流.瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数 ...

  2. js图片瀑布流效果

    要实现图片瀑布流效果,首先得准备几张图片. html的部分比较简单就是将图片加载到浏览器就可以了 代码如下(注意放的图片多一点要不然之后无法滑动鼠标就无法达到瀑布流效果): <!DOCTYPE ...

  3. JavaScript——原生js实现瀑布流

    瀑布流介绍及实现原理: 瀑布流是一种页面布局,页面上也有多等宽的块(块就页面内容),每一块都是绝对定位(absolute),每个块排列的方式如下:寻找现在高度最小的列,把该块定位到该列下方.需要知道, ...

  4. JS+PHP瀑布流效果(二)

    <!-- 加载商品 --><script>    //用户拖动滚动条,达到底部时ajax加载一次数据    var loading = $("#loading&quo ...

  5. js 图片瀑布流效果实现

    /** * Created by wwtliu on 14/9/5. */$(document).ready(function(){ $(window).on("load",fun ...

  6. JS+PHP瀑布流效果

    miai.php,代码如下: $link = mysql_connect("localhost","root",""); //连接数据库 $ ...

  7. 手把手教你js原生瀑布流效果实现

    手把手教你js原生瀑布流效果实现 什么是瀑布流效果 首先,让我们先看一段动画: 在动画中,我们不难发现,这个动画有以下特点: 1.所有的图片的宽度都是一样的 2.所有的图片的高度是不一样的 3.图片一 ...

  8. js 实现图片瀑布流效果,可更改配置参数 带完整版解析代码[waterFall.js]

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS实现图片瀑布流效果 页面需求 1 ...

  9. 利用JS实现简单的瀑布流效果

    哈哈, 我又来啦, 在这一段时间里, 我简单的学习了一下javascript(JS), 虽然不是很懂啦, 但是我也简单的尝试着做了点小东西, 就比如现在流行的瀑布流效果, 经过我的努力终于成功的完成了 ...

随机推荐

  1. 怎样对Android设备进行网络抓包

    问题描写叙述: 前段时间自己的app訪问server的url总是会出现间接性失败的问题,于是和server的同事开了个会.提出了他们server存在的这个bug,我的同事自然说自己的server没问题 ...

  2. linux下非root用户怎样改动root权限的文件

           在linux下会出现把一些配置文件參数配错.rootpassword忘记等导致系统无法启动或进入root的窘迫境界.本文以redhat  enterprise linux server ...

  3. c#用webkit内核支持html5

    [实例简介]经过测试可用 [实例截图] [核心代码] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 using System; ...

  4. Codeforces--631A--Interview(位运算)

     Interview Crawling in process... Crawling failed Time Limit:1000MS     Memory Limit:262144KB     ...

  5. 洛谷 P1083 [ NOIP 2012 ] 借教室 —— 线段树 / 二分差分数组

    题目:https://www.luogu.org/problemnew/show/P1083 当初不会线段树的时候做这道题...对差分什么不太熟练,一直没A,放在那儿不管... 现在去看,线段树就直接 ...

  6. bag of words in c++

    #include <iostream> #include <vector> #include <cstddef> #include <string> # ...

  7. bzoj4889

    http://www.lydsy.com/JudgeOnline/problem.php?id=4889 人傻常数大 bzoj上跑不过 洛谷上能过两到三个点 我写的是树套树啊 怎么跑的比分块还慢 每次 ...

  8. 图练习-BFS-从起点到目标点的最短步数

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2830 简单bfs #include <s ...

  9. [Swift通天遁地]九、拔剑吧-(3)创建多种自定义Segment分段样式的控件

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  10. Django day26 HyperlinkedIdentityField,序列化组件的数据校验以及功能的(全局,局部)钩子函数,序列化组件的反序列化和保存

    一:HyperlinkedIdentityField(用的很少):传三个参数:第一个路由名字,用来反向解析,第二个参数是要反向解析的参数值,第三个参数:有名分组的名字 -1 publish = ser ...