之前有在javaeye上看到使用jQuery插件来解决分页的方案,此处记录一下。
具体知识点,请看代码注释。
先上图先:
首先来看一下页面调用:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>分页插件</title>
<link rel="stylesheet" href="page.css"/>
<script type="text/javascript" src="jquery-1.2.6.js"></script>
<script type="text/javascript" src="jquery.page.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//选择渲染地点,然后调用,传入中页数,可以与服务器端很好结合
$('#mypaget').mypage(10112,{
callback:function(page){
$('#result').html("<font>回调函数-----您选择了第"+page+"页</font>");
}
});
});
</script>
</head>
<body>
<div id="mypaget" class="mypage"></div>
<div id="result" class="mypage"></div>
</body>
</html>
插件具体实现代码:
$.fn.mypage = function(totalProperty, opts){
//这里是插件实现的另一种方式
//$.extend 用于扩展自身方法
opts = $.extend({
perPage: 10,
callback: function(){
}
}, opts ||
{});
return this.each(function(){
/*计算总共页数*/
function pagenum(){
return Math.ceil(totalProperty / opts.perPage);
}
/*选定第几页*/
function selectPage(page){
return function(){
currPage = page;
if (page < 0)
currPage = 0;
if (page >= pagenum())
currPage = pagenum() - 1;
render();
$('img.page-wait', panel).attr('src', 'image/wait.gif');
opts.callback(currPage + 1);
$('img.page-wait', panel).attr('src', 'image/nowait.gif');
}
}
/*渲染操作*/
function render(){
var html = '<table><tbody><tr>' +
'<td><a href="#"><img class="page-first"></a></td>' +
'<td><a href="#"><img class="page-prev"></a></td>' +
'<td><span>第<input type="text" class="page-num">页/共' +
pagenum() +
'页</span></td>' +
'<td><a href="#"><img class="page-next"></a></td>' +
'<td><a href="#"><img class="page-last"></a></td>' +
'<td><img src="images/nowait.gif" class="page-wait"></td>' +
'<td><span style="padding-left:50px;">检索到' +
totalProperty +
'记录</span></td>' +
'</tr></tbody></table>';
var imgfirst = 'image/page-first-disabled.gif';
var imgnext = 'image/page-next-disabled.gif';
var imgprev = 'image/page-prev-disabled.gif';
var imglast = 'image/page-last-disabled.gif';
if (currPage > 0) {
imgfirst = 'image/page-first.gif';
imgprev = 'image/page-prev.gif';
}
if (currPage < pagenum() - 1) {
imgnext = 'image/page-next.gif';
imglast = 'image/page-last.gif';
}
panel.empty();
panel.append(html);
/*添加相应的属性,绑定分页事件*/
$('img.page-first', panel).bind('click', selectPage(0)).attr('src', imgfirst);
$('img.page-next', panel).bind('click', selectPage(currPage + 1)).attr('src', imgnext);
$('img.page-prev', panel).bind('click', selectPage(currPage - 1)).attr('src', imgprev);
$('img.page-last', panel).bind('click', selectPage(pagenum() - 1)).attr('src', imglast);
$('input.page-num', panel).val(currPage + 1).change(function(){
/*调用选择页面方法,将当前的参数传入进去*/
selectPage($(this).val() - 1)();
});
}
var currPage = 0;
var panel = $(this);
render();
});
}
- 大小: 4.2 KB
分享到:
相关推荐
在这个场景中,"jquery插件-文章分页插件"是一个专门为jQuery设计的轻量级组件,用于实现文章或内容的分页功能。 首先,我们来详细了解一下jQuery插件的基本结构和工作原理。jQuery插件通常是一个函数,该函数接收...
本篇文章将深入探讨jQuery插件在实现表格分页中的应用及其相关知识点。 一、jQuery和表格分页基础 1. jQuery简介:jQuery是由John Resig创建的一个轻量级的JavaScript库,它的目标是使JavaScript编程变得更加简单...
**jQuery分页插件**是Web开发中常用的一种工具,用于在大量数据中实现高效的页面导航,提升用户体验。本资源包含一个演示说明,使得理解和应用变得更加直观和简单。以下将详细解析jQuery分页插件的核心知识点及其...
**jQuery 插件:Ajax 搜索技术详解** 在现代网页开发中,实时、无刷新的用户体验已经成为提升网站质量的关键因素之一。jQuery 插件利用 Ajax(异步 JavaScript 和 XML)技术,可以实现在用户输入时动态搜索并显示...
《jQuery插件——表格树GridTree(后台分页版本20091018)详解》 在Web开发中,展示数据的方式多种多样,其中表格由于其清晰、直观的特点,被广泛应用于数据呈现。然而,当数据量较大时,单纯的表格可能会显得过于...
2. **jQuery插件结构**:理解jQuery插件的编写方式,通常包括一个函数,通过$.fn.extend()将功能扩展到jQuery对象上。这样,你可以通过"$()"选择器调用插件方法。 3. **分页逻辑**:分页涉及到计算总页数、当前页,...
本项目“jquery插件-实现全国各地高校查询”是利用jQuery的强大力量来创建一个功能,允许用户方便地查找并获取中国各地的高校信息。 首先,我们需要了解jQuery插件的基本结构。一个基本的jQuery插件通常包括两个...
**jQuery Pagination 分页插件详解** 在Web开发中,数据量过大的页面通常需要实现分页功能,以提高用户体验和加载速度。jQuery Pagination是一款轻量级、易用的前端分页插件,它能帮助开发者快速实现高效且美观的...
《jQuery插件——表格树GridTree详解》 在网页开发中,数据的展示方式多种多样,其中表格和树形结构是常见的两种。当这两种元素结合在一起时,就形成了表格树,这种布局方式既能清晰地展示层次关系,又能有效利用...
**jQuery分页插件pagination.js** 是一个广泛应用于网页数据分页的JavaScript库,它基于强大的jQuery框架构建,为开发者提供了高效、灵活的分页解决方案。分页是Web应用程序中常见的功能,特别是在处理大量数据时,...
2. jQuery插件:`z-pager.js`是基于jQuery库的插件,利用jQuery强大的DOM操作能力和事件处理能力,简化了分页功能的实现。 二、插件引入 要使用`z-pager.js`分页插件,首先需要在HTML文档中引入以下两个文件: 1....
jQuery-Paging是一款强大的JavaScript插件,专为网页中的动态数据分页设计,它极大地简化了在Web应用中处理大量数据的展示方式。该插件基于流行的JavaScript库jQuery构建,提供了直观且用户友好的分页体验,同时具备...
jQuery-Paging是一款基于JavaScript库jQuery的轻量级分页插件,它的主要功能是将大量数据分割成多页显示,提供友好的用户交互。通过简单的配置和调用,开发者可以快速集成到项目中,实现动态加载数据的效果。 二、...
5. **自定义样式**:jQuery Mobile 分页插件支持自定义样式,你可以通过修改 CSS 样式来自定义分页按钮的外观,如颜色、大小、边框等。 6. **事件处理**:插件通常提供一些事件,如 `pagechange` 或 `pagereset`,...
强大的jquery下拉框插件 下拉框展示带列表分页功能,适合下拉框大量数据展示 下拉框带快速查找,可以快速筛选 支持多选 基于jQuery、Bootstrap2、3开发 也可应用于无任何UI框架的原生HTML环境 Autocomplete输入自动...
在分页场景中,jQuery插件可以提供友好的用户界面和动态效果。 `jPagination`是一款流行且易于使用的jQuery分页插件,它提供了多种自定义选项,如每页显示的记录数、样式、回调函数等,帮助开发者快速实现分页功能...
本篇将深入讲解"jQuery插件集之(分页插件)",适合初学者入门学习。这个插件不仅提供了分页的基本功能,还具有易于理解和配置的特点,以及三种不同的样式供选择。 首先,我们需要了解jQuery插件的基本结构。一个...
**jQuery分页插件简介** 在网页开发中,分页是一种常见的数据展示方式,它能够帮助用户有效地浏览大量数据,避免一次性加载过多内容导致页面响应变慢或内存消耗过大。jQuery是一个轻量级的JavaScript库,它简化了...
2. 初始化分页: 使用jQuery选择器找到需要添加分页的元素,然后调用pagination插件的方法进行初始化,传入必要的配置参数,如每页显示的记录数、总记录数等。 3. 绑定事件: 为分页控件的“点击”事件绑定处理函数,...