jPaginate是基于jQuery的动感滚动分页插件,它的表现形式是像分页的按钮同样,很是有意思的是这些按钮却能够滚动,能够经过单击或鼠标滑向点两侧的小箭头来控制按钮的先后滚动。javascript
调用jPaginate插件的方法很简单:php
$(elementID).paginate()
可喜的是,jPaginate提供了不少属性配置,您能够轻易的定制想要的分页效果。css
设置方法如:html
$(elementID).paginate({ count:80, start:1, ... })
count: 数字,总记录数。java
start: 数字,开始显示的页数,如:3表示从第3页开始。jquery
display: 数字,分页条显示的页数,如:5表示一次显示5个页码数。数据库
border: 是否显示页码的边框。(true/false)异步
border_color: 设置边框的颜色,如"#d3d3d3"。ide
text_color: 设置页码的颜色,如"#68ba64"。函数
background_color: 设置页码的背景色,如"#f7f7f7"。
border_hover_color: 设置鼠标滑向页码时页码边框的颜色。
text_hover_color: 设置鼠标滑向页码时页码的颜色。
background_hover_color: 设置鼠标滑向页码时页码背景的颜色。
images: 是否显示页码导航箭头(方向箭头)(true/false)
mouse: 设置为'press'时,当鼠标滑向导航箭头时,页码随之滚动;设置为'slide'时,鼠标单击一次导航箭头页码滚动一次。
onChange: 当单击页码时,回调函数.
首先准备index.php,该页面用来分页展现一个博客文章列表。
一、引用JS:
<script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/jquery.paginate.js"></script> <script type="text/javascript"> $(function(){ $("#demo").paginate({ count : <?php echo $page;?>, start : 1, display : 5, border : true, border_color : '#BEF8B8', text_color : '#79B5E3', background_color : '#E3F2E1', border_hover_color : '#68BA64', text_hover_color : '#2573AF', background_hover_color : '#CAE6C6', images : false, mouse : 'press', onChange : function(page){ $("#pagetxt").load("article.php?id="+page); } }); }); </script>
注意,关于插件的属性设置,上文已详细介绍,属性count经过PHP计算出总页数$page,该参数由article.php得出。还要说明的是属性onChange:当点击页码时,调用函数,该函数实现了异步提交页码参数给article.php来处理,article.php经过读取数据库里的表书籍,并把获得的文章列表结果而返回页面,这就是Ajax。固然我这里只是作简单的演示,若是须要更多异步效果,能够参照jQuery使用文档。
二、引用CSS:
jPaginate官方提供了导航条样式,你也能够本身写个很是酷的样式。
<link rel="stylesheet" type="text/css" href="style.css" />
三、index.php初始页面。
必需要显示一个初始的文章列表,代码以下
<div class="demo"> <h4>Demo 3: Php+jQuery实现AJAX 分页效果</h4> <div id="pagetxt"> </div> <div id="demo"></div> </div>
在ID为pagetxt的DIV内加入PHP代码:
$query=$db->select("article","id,title,pubdate","cata=1 order by id desc limit 0,5"); while($row=$db->fetch_array($query)){ $pubdate=date("Y-m-d",$row[pubdate]); echo "<p><span>$pubdate</span><a href='view-blog-".$row[id].".html' target='_blank'> ".$row[title]."</a></p>";
四、article.php代码。
该代码用来获取index.php提交过来的页码,查询数据库,并将输出结果。代码以下:
include_once("common.php"); //链接数据库专用文件 $id=$_GET['id']; //获取页码 $result = $db->select("article", "id", "cata=1"); $total = $db->db_num_rows($result); //总记录数 $pagesize=5; //每页显示数 $page=ceil($total/$pagesize); //总页数 if(isset($id)){ $startPage=($id-1)*$pagesize; $query=$db->select("article","id,title,pubdate","cata=1 order by id desc limit $startPage, $pagesize"); while($row=$db->fetch_array($query)){ $pubdate=date("Y-m-d",$row[pubdate]); echo "<p><span>$pubdate</span><a href='view-blog-".$row[id].".html' target='_blank'> ".$row[title]."</a></p>"; //输出文章列表 } }