瀑布流布局非常适合大量图片的展示,一改过去裁剪图片尺寸统一的排版,每张图片都能完全展示,并错落有致,让人眼前一亮。

  • 版本:
  • jQuery v1.4.3+
  • jQuery Wookmark Load v1.4.8
  • 注意事项:
  • 项目中的 img 元素的 width 和 height 属性需要写,否则定位会不准确。(可以用 JavaScript 实时获取图片的宽高,但图片数量过多时,这将是一件不靠谱的事情。)

  • github

在线实例

实例预览 Example 基本示例

实例预览 AMD 加载器

实例预览 Endless scroll 无限滚动

实例预览 Flexible width 弹性布局

实例预览 Lightbox 支持灯窗插件

实例预览 Load it all 动态读取图片尺寸

实例预览 Placeholders 底部占位符

实例预览 PHP server PHP 加载数据

实例预览 Remote API 远程 API 加载数据

实例预览 Filtering Or 筛选功能

实例预览 Filtering And 筛选功能

实例预览 Filtering Only 筛选功能

实例预览 Filtering Fade 筛选功能

实例预览 sorting排序基本示例

实例预览 stamping基本示例

使用方法

载入 JavaScript 文件

  1. <script src="jquery.js"></script> 
  2. <script src="jquery.wookmark.js"></script>
复制

CSS 样式

  1. /* 
  2.  * 父容器需要设置相对定位 
  3.  * 项目需要设置隐藏 
  4.  */ 
  5. #list{position:relative;} 
  6. #list li{display:none;} 
复制

DOM 结构

  1. <!-- 
  2. 本例中,$("#list") 就是父容器,内部的 li 就是要进行瀑布流布局的项目。当然也可以使用 div 或其他标签的来写。 
  3. 项目中的 img 元素的 width 和 height 属性需要写,否则定位会不准确。 
  4. --> 
  5. <ul id="list"> 
  6.   <li><img src="pic_1.jpg" width="200" height="283"><p>text</p></li> 
  7.   <li><img src="pic_2.jpg" width="200" height="300"><p>text</p></li> 
  8.   ... 
  9.   <li><img src="pic_n.jpg" width="200" height="252"><p>text</p></li> 
  10. </ul> 
复制

调用 Wookmark

  1. $('#list li').wookmark(); 
  2.  
  3. // 自定义参数调用 
  4. $('#list li').wookmark({ 
  5.   container: $('#list'), 
  6.   offset: 10, 
  7.   itemWidth: 200 
  8. }); 
复制

手动触发布局事件

  1. // 根据需要,可以进行手动触发重新布局 
  2. $('#list').trigger('refreshWookmark');
复制

参数说明

名称 默认值 说明
container $('body') 父容器。自定义时需要给父容器设置 CSS 属性 "position: relative"。
align 'center' 对齐方向,可设置为:"left", "right", "center"。
direction undefined 排序方向。可设置为:"left"(从左至右), "right"(从右至左)

若不设置,则判断 align 为 "right" 时,direction 为 "right",否则默认为 "left"。

autoResize false 是否在浏览器窗口大小变化时进行重新布局。
resizeDelay 50 检测自动重新布局的间隔时间 (ms)。
itemWidth 0 列表项目的宽度 (px 或 %)。
flexibleWidth 0 列表项目自适应的最大宽度。该项设置时,itemWidth 的值作为列表项目的最小宽度。
offset 2 列表项目的间距 (px),横向纵向相同。
verticalOffset undefined 列表项目纵向的间距 (px),与 offset 配合即可分别设置横向与纵向的间距。
outerOffset 0 外部间距,与父容器顶部的间距。
ignoreInactiveItems true 是否隐藏被过滤的项目。
fillEmptySpace false 是否填充底部占位符。占位符的 class 为 "wookmark-placeholder"。
comparator null 自定义排序方法。
possibleFilters []  
onLayoutChanged undefined 布局变化时触发的函数。

jQuery Wookmark Load 瀑布流布局实例演示的更多相关文章

  1. Jquery瀑布流布局,jQuery Wookmark Load 示例

    瀑布流布局非常适合大量图片的展示,一改过去裁剪图片尺寸同意的排版,每张图片都能完全展示,并错落有致,让人眼前一亮. 注意事项:img元素的width和weight属性需要写,否则定位会不准确. 查看j ...

  2. jquery实现简单瀑布流布局

    jquery实现简单瀑布流布局 是开头都会说的原理 瀑布流布局有两种,一种是固定列,一种是非固定列.在此主要记述第一种的实现. 固定列的特征是:无论页面如何缩放,每行的总列数都一致. 一行4列的瀑布流 ...

  3. jquery实现简单瀑布流布局(续):图片懒加载

    # jquery实现简单瀑布流布局(续):图片懒加载 这篇文章是jquery实现简单瀑布流布局思想的小小扩展.代码基于前作的代码继续完善. 图片懒加载就是符合某些条件时才触发图片的加载.最常见的具体表 ...

  4. Ajax+json+jquery实现无限瀑布流布局

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  5. 使用jquery+css实现瀑布流布局

    虽然可以直接使用css实现瀑布流布局,但显示的方式有点问题,所以这儿就直接使用jquery+css来实现瀑布流布局,最终效果如下:      思路是通过将每个小块的position设置为relativ ...

  6. jQuery Wookmark 瀑布流布局

    瀑布流布局非常适合大量图片的展示,一改过去裁剪图片尺寸统一的排版,每张图片都能完全展示,并错落有致,让人眼前一亮. 版本: jQuery v1.4.3+ jQuery Wookmark Load v1 ...

  7. AJAX+json+jquery实现预加载瀑布流布局

    宽度是一定的高度不定的瀑布流布局 也可以说是无缝拼图 当浏览器滚动到底部时候自动加载图片 加载的图片地址用json 在img.js里 ,还有正在加载动画是用 css3制作的 在ff等支持css3可以显 ...

  8. myWaterfall - jQuery瀑布流布局插件

    myWaterfall - jQuery瀑布流布局插件 Demo http://jsfiddle.net/q3011893/p5k2ogy8/embedded/result,html,css,js/ ...

  9. Jquery瀑布流布局

    瀑布流布局最近真的很流行,很多人都跟我一样想知道是怎么做出来的吧,经过网上搜索大量的参考结合N边的实验今天终于被我写出来了,为了便于大家理解我使用了jQuery(当然用源生js代码执行的效率会高一些, ...

随机推荐

  1. python导入模块和包的使用

    做项目的时候经常会要求做到模块化管理,即同样功能的代码放到同一个文件夹下,以便于方便管理,相信很多人对模块的引用都模糊不清,今天鄙人在这里就总结下. 一.模块导入的使用 在同一个文件夹下有两个文件分别 ...

  2. Windows Server 2012部署Enterprise Solution 5.4

    最近一个客户升级系统,改用Windows Server 2012作为服务器操作系统.升级之后性能未见明显的改善,在不改变代码的基础上,考虑到C/S架构的能力,增加内存或是处理器的处理能力似乎可以解决一 ...

  3. SQL Pass北京举办第10次线下活动,欢迎报名

    活动主题: 探讨真实世界中的复制(第二季)与Windows Azure SQL Database内幕 地点:北京微软(中国)有限公司[望京利星行],三层308室 时间:2013年 9 月28日 13: ...

  4. Android入门(十八)服务

    原文链接:http://www.orlion.ga/674/ 一.定义一个服务 创建一个项目ServiceDemo,然后在这个项目中新增一个名为 MyService的类,并让它继承自 Service, ...

  5. AngularJs bower install 卡主不动解决办法

    ,在开发过程中,前端的依赖包都是使用bower来进行安装的,但是经常就是下载不了package特别的苦恼,这里顺便要抱怨一下github,不是一般的慢!! 后来在stackoverflow找到一个方法 ...

  6. poj2186Popular Cows(Kosaraju算法--有向图的强连通分量的分解)

    /* 题目大意:有N个cows, M个关系 a->b 表示 a认为b popular:如果还有b->c, 那么就会有a->c 问最终有多少个cows被其他所有cows认为是popul ...

  7. 【原创】Newlife.XCode的常见功能使用(一)查询与数据初始化

            本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html Newlife XCode组件相关文章目录:http://www ...

  8. IP,路由,交换基础培训记录

    IP 掩码  子网划分 vlan划分(有助于减少广播压力) vlan之间互通通过交换机打通. 路由,静态路由,动态路由(学习到的),路由表,下一跳,网络位长的优先级高. 交换机,hub集线器. hub ...

  9. 《HelloGitHub月刊》第03期

    <HelloGithub>第03期 兴趣是最好的老师,而<HelloGitHub> 就是帮你找到兴趣! 因为我比较熟悉python语言,所以月刊中python语言的项目居多,个 ...

  10. WIN7 共享网络方法

    WIN7 共享网络方法 第一步: 按WIN+R调出“运行”栏,在“运行”菜单栏输入“cmd”,出现命令提示符,输入命令“netsh wlan set hostednetwork mode=allow ...