jQuery Masonry瀑布流插件使用详解


Posted in Javascript onNovember 17, 2014

Masonry是 一款非常强大的jQuery动态网格布局插件,可以帮助开发人员快速开发类似剪贴画的界面效果。和CSS中float的效果不太一样的地方在 于,float先水平排列,然后再垂直排列,使用Masonry则垂直排列元素,然后将下一个元素放置到网格中的下一个开发区域。这种效果可以最小化处理 不同高度的元素在垂直方向的间隙。如下:

jQuery Masonry瀑布流插件使用详解

在上图中大家可以看到,在网格布局中使用float来处理不同高度的元素会使得垂直方向的元素间间隔比较大,而使用Masonry处理后,间隔变小。

用法

首先倒入类库,如下:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js">   

</script><script src="/path/to/jquery.masonry.min.js"></script> 

然后,针对元素容器执行masonry,如下:

$(function(){    

  $('#container').masonry({    

    // options    

    itemSelector : '.item',    

    columnWidth : 240    

  });    

}); 

html代码

<div id="container">    

  <div class="item">...</div>    

  <div class="item">...</div>    

  <div class="item">...</div>    

  ...    

</div> 

css

.item {    

  width: 220px;    

  margin: 10px;    

  float: left;    

} 

如果你加载的元素中有图片的话,那么需要确保Masonry在所有图片都加载完后才执行,需要调用如下代码:

var $container = $('#container');    

$container.imagesLoaded(function(){    

  $container.masonry({    

    itemSelector : '.item',    

    columnWidth : 240   
Javascript 相关文章推荐
用javascript实现的支持lrc歌词的播放器
May 17 Javascript
Ext对基本类型的扩展 ext,extjs,format
Dec 25 Javascript
jquery一句话全选/取消全选
Mar 01 Javascript
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
Jul 28 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
Dec 04 Javascript
jQuery实现鼠标可拖动调整表格列宽度
May 26 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
Aug 06 Javascript
jquery 取子节点及当前节点属性值的方法
Aug 24 Javascript
javascript中setInterval的用法
Jul 19 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
Nov 04 Javascript
微信小程序网络封装(简单高效)
Aug 06 Javascript
微信小程序绘制图片发送朋友圈
Jul 25 Javascript
javascript将url中的参数加密解密代码
Nov 17 #Javascript
PHP使用方法重载实现动态创建属性的get和set方法
Nov 17 #Javascript
PHP PDO操作总结
Nov 17 #Javascript
JavaScript函数详解
Nov 17 #Javascript
提升PHP安全:8个必须修改的PHP默认配置
Nov 17 #Javascript
详解Javascript 装载和执行
Nov 17 #Javascript
jQuery带箭头提示框tooltips插件集锦
Nov 17 #Javascript
You might like
php图片裁剪函数
2018/10/31 PHP
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
使用JavaScript库还是自己写代码?
2010/01/28 Javascript
jQuery图片预加载 等比缩放实现代码
2011/10/04 Javascript
纯css+js写的一个简单的tab标签页带样式
2014/01/28 Javascript
JavaScript限定图片显示大小的方法
2015/03/11 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
jQuery Mobile开发中日期插件Mobiscroll使用说明
2016/03/02 Javascript
基于BootStrap Metronic开发框架经验小结【五】Bootstrap File Input文件上传插件的用法详解
2016/05/12 Javascript
jQuery控制文本框只能输入数字和字母及使用方法
2016/05/26 Javascript
用js动态添加html元素,以及属性的简单实例
2016/07/19 Javascript
Angular2学习教程之ng中变更检测问题详解
2017/05/28 Javascript
Node.js静态服务器的实现方法
2018/02/28 Javascript
Async/Await替代Promise的6个理由
2019/06/15 Javascript
原理深度解析Vue的响应式更新比React快
2020/04/04 Javascript
[01:46]TI4西雅图DOTA2前线报道 中国选手抱团调时差
2014/07/08 DOTA
跟老齐学Python之有点简约的元组
2014/09/24 Python
python编程实现希尔排序
2017/04/13 Python
Python3.5.3下配置opencv3.2.0的操作方法
2018/04/02 Python
PyQt5每天必学之日历控件QCalendarWidget
2018/04/19 Python
Python 实现子类获取父类的类成员方法
2019/01/11 Python
python将类似json的数据存储到MySQL中的实例
2019/07/12 Python
python实现对服务器脚本敏感信息的加密解密功能
2019/08/13 Python
Python如何用filter函数筛选数据
2020/03/05 Python
html通过canvas转成base64的方法
2019/07/18 HTML / CSS
Chicco婴儿用品美国官网:汽车座椅、婴儿推车、高脚椅等
2018/11/05 全球购物
日本著名化妆品零售网站:Cosme Land
2019/03/01 全球购物
数据库设计的包括哪两种,请分别进行说明
2016/07/15 面试题
医德医魂心得体会
2014/09/11 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
白酒代理协议书范本
2014/10/26 职场文书
暖春观后感
2015/06/08 职场文书
2015年高三年级组工作总结
2015/07/21 职场文书
大学社团活动总结怎么写
2019/06/21 职场文书
vue3如何优雅的实现移动端登录注册模块
2021/03/29 Vue.js
Lakehouse数据湖并发控制陷阱分析
2022/03/31 Oracle