html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

jQuery Masonry瀑布流插件使用详解_jquery_

[ ] 已经帮助:人解决问题

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

QgJHTML5中文学习网 - HTML5先行者学习网

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

用法QgJHTML5中文学习网 - HTML5先行者学习网

首先倒入类库,如下:QgJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
QgJHTML5中文学习网 - HTML5先行者学习网
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js">   QgJHTML5中文学习网 - HTML5先行者学习网
</script><script src="/path/to/jquery.masonry.min.js"></script>  QgJHTML5中文学习网 - HTML5先行者学习网
QgJHTML5中文学习网 - HTML5先行者学习网

然后,针对元素容器执行masonry,如下:QgJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
QgJHTML5中文学习网 - HTML5先行者学习网
$(function(){    QgJHTML5中文学习网 - HTML5先行者学习网
  $('#container').masonry({    QgJHTML5中文学习网 - HTML5先行者学习网
    // options    QgJHTML5中文学习网 - HTML5先行者学习网
    itemSelector : '.item',    QgJHTML5中文学习网 - HTML5先行者学习网
    columnWidth : 240    QgJHTML5中文学习网 - HTML5先行者学习网
  });    QgJHTML5中文学习网 - HTML5先行者学习网
});  QgJHTML5中文学习网 - HTML5先行者学习网
QgJHTML5中文学习网 - HTML5先行者学习网

html代码QgJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
QgJHTML5中文学习网 - HTML5先行者学习网
<div id="container">    QgJHTML5中文学习网 - HTML5先行者学习网
  <div class="item">...</div>    QgJHTML5中文学习网 - HTML5先行者学习网
  <div class="item">...</div>    QgJHTML5中文学习网 - HTML5先行者学习网
  <div class="item">...</div>    QgJHTML5中文学习网 - HTML5先行者学习网
  ...    QgJHTML5中文学习网 - HTML5先行者学习网
</div>  QgJHTML5中文学习网 - HTML5先行者学习网
QgJHTML5中文学习网 - HTML5先行者学习网

cssQgJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
QgJHTML5中文学习网 - HTML5先行者学习网
.item {    QgJHTML5中文学习网 - HTML5先行者学习网
  width: 220px;    QgJHTML5中文学习网 - HTML5先行者学习网
  margin: 10px;    QgJHTML5中文学习网 - HTML5先行者学习网
  float: left;    QgJHTML5中文学习网 - HTML5先行者学习网
QgJHTML5中文学习网 - HTML5先行者学习网
QgJHTML5中文学习网 - HTML5先行者学习网

如果你加载的元素中有图片的话,那么需要确保Masonry在所有图片都加载完后才执行,需要调用如下代码:QgJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
QgJHTML5中文学习网 - HTML5先行者学习网
var $container = $('#container');    QgJHTML5中文学习网 - HTML5先行者学习网
$container.imagesLoaded(function(){    QgJHTML5中文学习网 - HTML5先行者学习网
  $container.masonry({    QgJHTML5中文学习网 - HTML5先行者学习网
    itemSelector : '.item',    QgJHTML5中文学习网 - HTML5先行者学习网
    columnWidth : 240    QgJHTML5中文学习网 - HTML5先行者学习网
QgJHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助