jQuery瀑布流插件Wookmark使用实例
更新时间:2014年04月02日 10:55:28 作者:
Wookmark jQuery插件大致使用position:absolute来重构内容实现瀑布流布局,需要的朋友可以参考下
插件下载:https://github.com/GBKS/Wookmark-jQuery
官方主页:http://www.wookmark.com/jquery-plugin
下载插件后,在网页中引用插件的JS文件:
复制代码 代码如下:
<script src="jquery-1.8.2.min.js"></script>
<script src="jquery.wookmark.min.js"></script>
HTML代码结构:
复制代码 代码如下:
<div id="main">
<ul id="tiles">
<li><img src="images/1.jpg"></li>
<li><img src="images/2.jpg"></li>
<li><img src="images/3.jpg"></li>
</ul>
</div>
<ul id="tiles">
<li><img src="images/1.jpg"></li>
<li><img src="images/2.jpg"></li>
<li><img src="images/3.jpg"></li>
</ul>
</div>
简单用法:在html文件中添加代码
复制代码 代码如下:
<script>
jQuery(function($){
$('#tiles li').wookmark();
});
</script>
jQuery(function($){
$('#tiles li').wookmark();
});
</script>
复杂一点的用法:
复制代码 代码如下:
<script>
jQuery(function($){
$('#tiles li').wookmark({ //这里是要实现瀑布流布局的对象
autoResize: true, //设置成true表示当window窗口大小改变的时候,重新布局
container: $('#container'), //这个是容器名称 这个容器要必须包含一个css属性"position:relative" 否则你就会看到全部挤在页面的左上角了
offset: 12, //2个相邻元素之间的间距
itemWidth: 222, //指定对象的宽度
resizeDelay: 50 //这是延时效果 默认是50
});
});
</script>
jQuery(function($){
$('#tiles li').wookmark({ //这里是要实现瀑布流布局的对象
autoResize: true, //设置成true表示当window窗口大小改变的时候,重新布局
container: $('#container'), //这个是容器名称 这个容器要必须包含一个css属性"position:relative" 否则你就会看到全部挤在页面的左上角了
offset: 12, //2个相邻元素之间的间距
itemWidth: 222, //指定对象的宽度
resizeDelay: 50 //这是延时效果 默认是50
});
});
</script>
wookmark同样也可以配合ajax来实现动态加载数据,不过新增之后需要重新执行一次。
复制代码 代码如下:
var handler = $('#tiles li');
handler.wookmark(options);
handler.wookmark(options);
如果你在前面已经绑定了事件,在重新执行之前,先清除一下。
复制代码 代码如下:
handler.wookmarkClear();
看到比较多人在问滚动加载是怎么用的,弄个实例补充说明下:
复制代码 代码如下:
var handler = null;
//定义基本属性.
var options = {
autoResize: true,
container: $('#main'),
offset: 2,
itemWidth: 210
};
//定义滚动函数
function onScroll(event) {
//是否到底部(这里是判断离底部还有100px开始载入数据).
var closeToBottom = ($(window).scrollTop() + $(window).height() > $(document).height() - 100);
if(closeToBottom) {
//这里就是AJAX载入的数据
$.ajax({url:"data.html", dataType:"html", success:function(html){
//把新数据追加到对象中
$('#waterfall').append(html);
//清除原来的定位
if(handler) handler.wookmarkClear();
//创建新的wookmark对象
handler = $('#waterfall li');
handler.wookmark(options);
}
});
}
};
$(document).ready(new function() {
//绑定scroll事件.
$(document).bind('scroll', onScroll);
//第一次布局.
handler = $('#waterfall li');
handler.wookmark(options);
});
//定义基本属性.
var options = {
autoResize: true,
container: $('#main'),
offset: 2,
itemWidth: 210
};
//定义滚动函数
function onScroll(event) {
//是否到底部(这里是判断离底部还有100px开始载入数据).
var closeToBottom = ($(window).scrollTop() + $(window).height() > $(document).height() - 100);
if(closeToBottom) {
//这里就是AJAX载入的数据
$.ajax({url:"data.html", dataType:"html", success:function(html){
//把新数据追加到对象中
$('#waterfall').append(html);
//清除原来的定位
if(handler) handler.wookmarkClear();
//创建新的wookmark对象
handler = $('#waterfall li');
handler.wookmark(options);
}
});
}
};
$(document).ready(new function() {
//绑定scroll事件.
$(document).bind('scroll', onScroll);
//第一次布局.
handler = $('#waterfall li');
handler.wookmark(options);
});
相关文章
牛叉的Jquery——Jquery与DOM对象的互相转换及DOM的三种操作
Jquery对象就是通过jQuery包装DOM对象后产生的对象,jQuery对象是jQuery独有的,其可以使用jQuery里的方法,本文给大家介绍Jquery对象就是通过jQuery包装DOM对象后产生的对象,jQuery对象是jQuery独有的,其可以使用jQuery里的方法。感兴趣的朋友可以参考下2015-10-10
jQuery Selectors(选择器)的使用(九、表单对象属性篇)
本系列文章主要讲述jQuery框架的选择器(Selectors)使用方法,我将以实例方式进行讲述,以简单,全面为基础,不会涉及很深,我的学习方法:先入门,后进阶!2009-12-12


最新评论