文档章节

PHP+jQuery实现Ajax分页效果:jPaginate插件的应用

mickelfeng
 mickelfeng
发布于 2013/12/28 22:35
字数 874
阅读 208
收藏 15

jPaginate是基于jQuery的动感滚动分页插件,它的表现形式是像分页的按钮一样,非常有意思的是这些按钮却可以滚动,可以通过单击或鼠标滑向点两侧的小箭头来控制按钮的前后滚动。

调用jPaginate插件的方法很简单:

 $(elementID).paginate()

属性设置

可喜的是,jPaginate提供了很多属性配置,您可以轻易的定制想要的分页效果。

设置方法如:

 $(elementID).paginate({
      count:80,
      start:1,
      ...
 })

count: 数字,总记录数。

start: 数字,开始显示的页数,如:3表示从第3页开始。

display: 数字,分页条显示的页数,如:5表示一次显示5个页码数。

border: 是否显示页码的边框。(true/false)

border_color: 设置边框的颜色,如"#d3d3d3"。

text_color: 设置页码的颜色,如"#68ba64"。

background_color: 设置页码的背景色,如"#f7f7f7"。

border_hover_color: 设置鼠标滑向页码时页码边框的颜色。

text_hover_color: 设置鼠标滑向页码时页码的颜色。

background_hover_color: 设置鼠标滑向页码时页码背景的颜色。

images: 是否显示页码导航箭头(方向箭头)(true/false)

mouse: 设置为'press'时,当鼠标滑向导航箭头时,页码随之滚动;设置为'slide'时,鼠标单击一次导航箭头页码滚动一次。

onChange: 当单击页码时,回调函数.

实例应用:PHP+jQuery实现Ajax分页效果

首先准备index.php,该页面用来分页展示一个博客文章列表。

1、引用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使用文档。

2、引用CSS:

jPaginate官方提供了导航条样式,你也可以自己写个非常酷的样式。

<link rel="stylesheet" type="text/css" href="style.css" />

3、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>";

4、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>"; //输出文章列表
   }
}



本文转载自:http://www.codesky.net/article/201308/181931.html

共有 人打赏支持
mickelfeng

mickelfeng

粉丝 227
博文 2635
码字总数 568692
作品 0
成都
高级程序员
加载中

评论(2)

m
mitsuhide
不加style.css就会有错,兼容性差,我加了半天都没加上,写的真垃圾
m
mitsuhide
不加style.css就会有错,兼容性差,写的真垃圾
19个 jQuery 分页插件和教程,附带实例

在这篇文章中我们将向你介绍 20 个最棒的 jQuery 分页插件以及教程,并提供在线演示。 1.客户端的jQuery 分页插件jPages jPages 是一个客户端的分页插件,但提供很多特性例如自动翻页、键盘和...

凯文加内特
2014/04/30
0
0
21 个最佳的 jQuery 翻页插件

jPages [ Demo || Download ] jPages 是一个客户端的分页插件,但提供很多特性例如自动翻页、键盘和滚动浏览,延迟显示以及完全可定制的导航面板。 Easy pagination with jQuery and Ajax [...

oschina
2013/05/14
10.4K
12
20 个 jQuery 分页插件和教程,附带实例

在这篇文章中我们将向你介绍 20 个最棒的 jQuery 分页插件以及教程,并提供在线演示。 1.客户端的jQuery 分页插件jPages jPages 是一个客户端的分页插件,但提供很多特性例如自动翻页、键盘和...

红薯
2012/04/04
14.4K
6
常用JQuery插件整理收藏分享

虽然自己也写过插件,但JQuery插件种类的繁多,大多时候,我还是使用别人写好的插件,这些都是我用了同类插件里较为不错的一些,今天就整理一下公开放出来。   UI:   jquery UI(官方的...

sinat_34719507
2017/03/09
0
0
常用JQuery插件整理

 jquery UI(官方的UI插件,功能很多,但我只用少数几个)   jQuery EasyUI   jQuery LigerUI   对话框:   artDialog(很欣赏这个插件,又强大又美观)   AsyncBox(制作者小吴同...

楚广明
2011/12/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

centos7安装Nginx

安装所需环境 一. gcc 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: yum install gcc-c++ 二. PCRE pcre-devel 安装 PCRE(Perl Co...

狼王黄师傅
13分钟前
0
0
dubbo+apollo微服务开发指南

为了大家比较快速的开发微服务,规范dubbo,spring,mybatis,hessian,netty的版本和用法,我写了一个demo,下面对demo的功能做个简单的介绍,如有疑问的地方,可以私下问我。 微服务项目示例 ...

PageYi
15分钟前
0
0
android流式布局、待办事项应用、贝塞尔曲线、MVP+Rxjava+Retrofit、艺术图片应用等源码

Android精选源码 android模仿淘宝首页效果源码 一款艺术图片应用,采用T-MVVM打造 Android MVP + RxJava + Retrofit项目 android流式布局实现热门标签效果 android仿淘宝客户端商品详情页效果...

Android爱开源
17分钟前
2
0
一步一步安装hive

The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto d......

hnairdb
20分钟前
0
0
【WebService 系列二 使用JAX-WS开发示例程序】

1、服务端代码 1.1、编写SEI SEI即(Service Endpoint Interface)SEI在ws中称为portType,在java中称为接口 package jaxws.server;/** * @className: HelloService * @description: jax......

HansonReal
30分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部