DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> jquery簡單瀑布流實現原理代碼學習
jquery簡單瀑布流實現原理代碼學習
編輯:JQuery特效代碼     
測試環境: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>
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved