jquery简单瀑布流实现原理及ie8下测试代码


Posted in Javascript onJanuary 23, 2013

测试环境:ie8 ff13.0.1 chrome22
可以将分页获取的内容依次填入四个div中,瀑布流的分页可以以多页(比如5页)为单位二次分页,这样可以减少后台算法的复杂度

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
<title>waterfall flow</title> 
<script type="text/javascript" src="../jquery-1.8.0.min.js" /></script> 
<style type="text/css" > 
body{margin:0px;} 
#main{width:840px;margin:0 auto;} 
.flow{float:left;width:200px;margin:5px;background:#ABC;} 
</style> 
<script type="text/javascript" > 
$(document).ready(function(){ 
// 初始化内容 
for(var i = 0 ; i < 3 ; i++){ 
$(".flow").each(function(){ 
$(this).append("<div style=\"width:90%;height:"+getRandom(200,300)+"px;margin:5px auto;background:#159;\"></div>"); 
}); 
} $(window).scroll(function(){ 
// 被卷去的高度 
var scrollTop = document.body.scrollTop||document.documentElement.scrollTop; 
// 页面高度 
var pageHeight = $(document).height(); 
// 可视区域高度 
var viewHeight = $(window).height(); 
//alert(viewHeight); 
//当滚动到底部时 
if((scrollTop+viewHeight)>(pageHeight-20)){ 
if(scrollTop<1000){//防止无限制的增长 
for(var i = 0 ; i < 2 ; i++){ 
$(".flow").each(function(){ 
$(this).append("<div style=\"width:90%;height:"+getRandom(200,300)+"px;margin:5px auto;background:#159;\"></div>"); 
}); 
} 
} 
} 
}); 
}); 
/* 
* 获取指定范围随机数 
* @param min,最小取值 
* @param max,最大取值 
*/ 
function getRandom(min,max){ 
//x上限,y下限 
var x = max; 
var y = min; 
if(x<y){ 
x=min; 
y=max; 
} 
var rand = parseInt(Math.random() * (x - y + 1) + y); 
return rand; 
} 
</script> 
</head> 
<body> 
<div id="main"> 
<div class="flow" ></div> 
<div class="flow" ></div> 
<div class="flow" ></div> 
<div class="flow" ></div> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
JavaScript设置FieldSet展开与收缩
May 15 Javascript
JS 用6N±1法求素数 实例教程
Oct 20 Javascript
jquery.blockUI.js上传滚动等待效果实现思路及代码
Mar 18 Javascript
有效提高JavaScript执行效率的几点知识
Jan 31 Javascript
jQuery获取checkbox选中的值
Jan 28 Javascript
javascript HTML+CSS实现经典橙色导航菜单
Feb 16 Javascript
jQuery实现点击任意位置弹出层外关闭弹出层效果
Oct 19 Javascript
vue 国际化 vue-i18n 双语言 语言包
Jun 07 Javascript
世界上最短的数字判断js代码
Sep 09 Javascript
Vue-cli项目部署到Nginx服务器的方法
Nov 01 Javascript
实现vuex与组件data之间的数据同步更新方式
Nov 12 Javascript
JavaScript内置对象之Array的使用小结
May 12 Javascript
jquery实现的带缩略图的焦点图片切换(自动播放/响应鼠标动作)
Jan 23 #Javascript
解决jquery submit()提交表单提示:f[s] is not a function
Jan 23 #Javascript
js修改input的type属性及浏览器兼容问题探讨与解决
Jan 23 #Javascript
重构Javascript代码示例(重构前后对比)
Jan 23 #Javascript
javascript提取URL的搜索字符串中的参数(自定义函数实现)
Jan 22 #Javascript
jQuery 插件仿百度搜索框智能提示(带Value值)
Jan 22 #Javascript
js jquery验证银行卡号信息正则学习
Jan 21 #Javascript
You might like
深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)
2013/02/06 PHP
js改变文章字体大小的实例代码
2013/11/27 Javascript
首页图片漂浮效果示例代码
2014/06/05 Javascript
Bootstrap每天必学之按钮
2015/11/26 Javascript
微信小程序 chooseImage选择图片或者拍照
2017/04/07 Javascript
vue服务端渲染的实例代码
2017/08/28 Javascript
JS同步、异步、延迟加载的方法
2018/05/05 Javascript
傻瓜式解读koa中间件处理模块koa-compose的使用
2018/10/30 Javascript
vue中datepicker的使用教程实例代码详解
2019/07/08 Javascript
js实现时分秒倒计时
2019/12/03 Javascript
vue项目中使用bpmn-自定义platter的示例代码
2020/05/11 Javascript
使用vue构建多页面应用的示例
2020/10/22 Javascript
vue+vant实现购物车全选和反选功能
2020/11/17 Vue.js
Vue使用Ref跨层级获取组件的步骤
2021/01/25 Vue.js
[52:08]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第一局
2016/03/05 DOTA
[04:32]玩具屠夫中文语音节选
2020/08/23 DOTA
Python字符串的encode与decode研究心得乱码问题解决方法
2009/03/23 Python
Python中实现两个字典(dict)合并的方法
2014/09/23 Python
Python实现计算文件夹下.h和.cpp文件的总行数
2015/04/23 Python
Python操作MongoDB详解及实例
2017/05/18 Python
python中如何使用分步式进程计算详解
2019/03/22 Python
python3实现用turtle模块画一棵随机樱花树
2019/11/21 Python
在OpenCV里使用Camshift算法的实现
2019/11/22 Python
CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
2014/10/11 HTML / CSS
整理HTML5的一些新特性与Canvas的常用属性
2016/01/29 HTML / CSS
H5 meta小结(前端必看篇)
2016/08/24 HTML / CSS
HTML5 文件上传下载的实例代码
2017/07/03 HTML / CSS
英国版MAC彩妆品牌:Illamasqua
2018/04/18 全球购物
数控技术专业推荐信
2013/11/01 职场文书
致跳高运动员加油稿
2014/02/12 职场文书
社区爱国卫生月活动总结
2014/06/30 职场文书
学生党员批评与自我批评
2014/10/15 职场文书
打架检讨书
2015/01/27 职场文书
医药公司开票员岗位职责
2015/04/15 职场文书
酒店工程部主管岗位职责
2015/04/16 职场文书
Python如何让字典保持有序排列
2022/04/29 Python