jQuery简单瀑布流实现原理及IE8下测试代码
作者:测试鸭时间:2026-10-26 23:33:47浏览:493
本文介绍基于jQuery的简单瀑布流布局实现原理,重点展示如何在IE8、Firefox及Chrome环境下进行兼容性测试。通过动态计算滚动高度与可视区域,实现内容自动追加,并提供完整的HTML、CSS及JS示例代码供参考。
jQuery简单瀑布流实现原理及IE8下测试代码
本次代码测试环境涵盖IE8、Firefox 13.0.1以及Chrome 22版本。
在实现分页加载时,可将获取的内容依次填充至四个列容器中。为了降低后台算法复杂度,瀑布流的分页策略建议以多页(例如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>作者最新文章
生产环境怎么自动移除JS的console.log语句?
2026-11-03 10:59:54
面试刷题必备:怎么利用在线JS沙箱高效验证算法
2026-11-03 09:11:28
使用 Vite 构建 Phaser.js 项目的配置与资源管理
2026-11-02 10:26:07
webpack 自动清理 dist 文件夹的两种实现方法
2026-10-31 14:14:29
Docker部署Jackett完整指南:CLI与Compose配置及索引器使用
2026-10-31 12:57:10
