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 相关文章推荐
jQuery(1.3.2) 7行代码搞定跟随屏幕滚动的层
May 21 Javascript
Node.js实战 建立简单的Web服务器
Mar 08 Javascript
jQuery页面图片伴随滚动条逐渐显示的小例子
Mar 21 Javascript
javascript中的altKey 和 Event属性大全
Nov 06 Javascript
浅谈Jquery中Ajax异步请求中的async参数的作用
Jun 06 Javascript
Node.js 实现简单小说爬虫实例
Nov 18 Javascript
jQuery学习笔记之入门
Dec 14 Javascript
Jquery Easyui表单组件Form使用详解(30)
Dec 19 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
May 03 Javascript
解决vue里碰到 $refs 的问题的方法
Jul 13 Javascript
javascript的this关键字详解
May 20 Javascript
在JavaScript中查找字符串中最长单词的三种方法(推荐)
Jan 18 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下对字符串的递增运算代码
2010/08/21 PHP
PHP文件上传原理简单分析
2011/05/29 PHP
ThinkPHP3.1新特性之对Ajax的支持更加完善
2014/06/19 PHP
php使用gettimeofday函数返回当前时间并存放在关联数组里
2015/03/19 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
phpstudy默认不支持64位php的解决方法
2017/02/20 PHP
实例讲解通过​PHP创建数据库
2019/01/20 PHP
PHP远程连接oracle数据库操作实现方法图文详解
2019/04/11 PHP
jsTree 基于JQuery的排序节点 Bug
2011/07/26 Javascript
一个简单的网站访问JS计数器 刷新1次加1次访问
2012/09/20 Javascript
Nodejs关于gzip/deflate压缩详解
2015/03/04 NodeJs
浅谈JavaScript中的字符编码转换问题
2015/07/07 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
功能强大的Bootstrap组件(结合js)
2016/08/03 Javascript
Bootstrap Table使用方法解析
2016/10/19 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
Vue引入Stylus知识点总结
2020/01/16 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
[05:59]2018DOTA2国际邀请赛寻真——只为胜利的Secret
2018/08/13 DOTA
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
2017/06/23 Python
使用Kivy将python程序打包为apk文件
2017/07/29 Python
Python实现变声器功能(萝莉音御姐音)
2019/12/05 Python
python判断正负数方式
2020/06/03 Python
英国排名第一的LED灯泡网站:LED Bulbs
2019/09/03 全球购物
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
RIP版本1跟版本2的区别
2013/12/30 面试题
自我鉴定写作要点
2014/01/17 职场文书
乡镇三项教育实施方案
2014/03/30 职场文书
《数星星的孩子》教学反思
2014/04/11 职场文书
我的大学生活演讲稿
2014/04/25 职场文书
募捐倡议书怎么写
2014/05/14 职场文书
数据保密承诺书
2014/06/03 职场文书
毕业生代领毕业材料的授权委托书
2014/09/29 职场文书
环卫个人总结
2015/03/03 职场文书
Python必备技巧之字符数据操作详解
2022/03/23 Python