源码如下:

  1. $.fn.pager = function (pagerInfo) {
  2. var recordCount = this.size();
  3. if (recordCount <= pagerInfo.pagesize) return;
  4. var currentPageIndex = 1, //当前面,默认为1
  5. pageCount = Math.ceil(recordCount / pagerInfo.pagesize); //总页数
  6. //构建分页的html
  7. $('<div>一共' + this.size() + '条记录,一共' + pageCount + '页,当前第<span>1</span>页</div>')
  8. .insertAfter(pagerInfo.container)
  9. .append($('<a class="prev-page">上一页</a>').click(function () {
  10. if (currentPageIndex == 1) return;
  11. currentPageIndex--;
  12. showRecords(currentPageIndex);
  13. $(this).prev('span').text(currentPageIndex);
  14. }))
  15. .append($('<a class="prev-page" href>下一页</a>').click(function () {
  16. if (currentPageIndex == pageCount) return;
  17. currentPageIndex++;
  18. showRecords(currentPageIndex);
  19. $(this).prevAll('span').text(currentPageIndex);
  20. }))
  21. .css(pagerInfo.css)
  22. .find('span').css({ padding: 0 });
  23. var jRecords = this;  //保留作用域
  24. //pageIndex以1为开始
  25. var showRecords = function (pageIndex) {
  26. jRecords.hide();  //隐匿所有记录先
  27. var startIndex = (pageIndex - 1) * pagerInfo.pagesize,  //当前页的开始记录
  28. endIndex = (pageIndex * pagerInfo.pagesize) - 1;   //当前页的结束记录
  29. jRecords.filter(':eq(' + startIndex + '),:gt(' + startIndex + ')').show();  //显示大于开始记录(包含)的所有记录
  30. jRecords.filter(':gt(' + endIndex + ')').hide();  //隐藏大于结束记录的所有记录,以达到分页效果
  31. };
  32. showRecords(currentPageIndex);
  33. };

使用举例:

  1. $('#feedback ul li')  //数据源
  2. .pager({
  3. pagesize: 10, //分页大小
  4. container: $('#feedback'), //容纳分页html的容器
  5. css: { 'margin-left': '40px'} //分页html的样式
  6. });

jQuery分页小插件的更多相关文章

  1. jquery的小插件(按钮抖动)——衍生QQ窗口抖动

    1.抖动的按钮 效果预览:http://runjs.cn/detail/tyx8dbag <script type="text/javascript"> //shake ...

  2. jquery分页滑动插件(鼠标可控制上下滑动)

    这个插件非常好用 http://www.swiper.com.cn/

  3. 20 个具有惊艳效果的 jQuery 图像缩放插件

    jQuery相对与Flash的魔力已经贯穿整个网络.尽管,Flash层被认为是用于网页设计的首选,然而随着jQuery的出现,以及他的酷似Flash的交互式特效使得网页更加的优雅——Flash开始靠边 ...

  4. 分享一个Jquery 分页插件 Jquery Pagination

    分页插件来说,我觉得适用就行,尽量简单然后能够根据不同的应用场景能够换肤.展现形式等. 对于初学者想写分页插件的同学,也可以看下源码,代码也挺简单明了的,也助于自己写个小插件. 不过我比较懒,一般直接 ...

  5. Jquery 分页插件 Jquery Pagination

    Jquery 分页插件 Jquery Pagination 分页插件来说,我觉得适用就行,尽量简单然后能够根据不同的应用场景能够换肤.展现形式等. 对于初学者想写分页插件的同学,也可以看下源码,代码也 ...

  6. 一个强大的jquery分页插件

    点击这里查看效果 这个分页插件使用方便,引用keleyidivpager.js和keleyidivpager.css文件,然后在htm(或者php,aspx,jsp等)页面中对分页总数,参数名,前缀后 ...

  7. 21个很棒的jQuery分页插件下载

    分页是指将一个大内容划分为各种不同的页面,因此网站的分页是一个很重要的部分,必须让内容有组织性和易于访问.分页有各两种不同的方式,手动跟自动.最受欢迎简单和广泛的方法是jQuery插件.下面我们收集了 ...

  8. jQuery 分页插件 jqPagination的使用

    jqPagination 是一个简单易用的轻量级 jQuery分页插件,其使用了 HTML5 和 CSS3 技术来实现.此插件提供了几个参数设置选项,通过简单的配置即可生成分页控件.此外,它的外观样式 ...

  9. jquery分页插件的修改

    前言 最近分页功能使用的比较多,所以从网上下载个jquery分页插件来使用, 之前用的都挺好的,直到昨天出现了逻辑问题,反复查看自己的代码,最后发现是点击页码后执行了多个点击事件.最后只有自己查看源码 ...

随机推荐

  1. tomcat服务器开启gzip功能的方法

    http://blog.csdn.net/wang_159369/article/details/8107163 tomcat5.0以后的版本是支持对输出内容进行gzip格式的压缩的.该功能默认是关闭 ...

  2. sql server Service Broker 相关查询

    sql server Service Broker 相关查询 -- 查看传输队列中的消息 --如果尝试从队列中移除时,列将表明哪里出现了问题 select * from sys.transmissio ...

  3. wait & waitpid 以及子进程传给父进程的信号分析

    wait() 和 waitpid() wait() 系统调用挂起调用进程的执行直到有一个孩子终止.调用 wait(&status) 等价于: waitpid(-1, &status, ...

  4. Google C++ Coding Style 学习笔记

    写在前面:最新公司马上就要开始开发一款视觉产品,工程量较大,且需要对客户提供可以二次开 发的SDK,整个项目用C++编写. 这就对代码质量提出了非常高的要求,同时,如何设计出优雅稳定的API也是相当大 ...

  5. (数据库)DBCP连接池配置参数说明

    <!-- 数据源1 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicData ...

  6. Android高效异步图片加载框架

    概述 Android高效异步图片加载框架:一个高效的异步加载显示的图片加载框架,同时具备图片压缩,缓存机制等特性. 详细 代码下载:http://www.demodashi.com/demo/1214 ...

  7. Dao泛型设计和反射反型

    (1)DAO泛型设计:当二哥或多个类中有类似的方法时,可以将这些累死的方法提出到类中,形式一个泛型父类 (2)反射反型:在泛型父类中获取子类的具体类型的过程,叫反射反型 package cn.itca ...

  8. sms_queue 短信队列

    git地址:https://github.com/Filix/sms_queue 简介 通过队列的方式发送短信,暂时实现了redis作为队列. 以实现的第三方短信服务: 百悟.漫道. 发送短信方,只需 ...

  9. 那些最好的轮子 - PHP篇

    转载于:http://avnpc.com/pages/best-wheels-for-php 在关于不要重复造轮子的二三事一文中,交代了一些背景和想法.本篇则完全是一些干货,列举一些我用过或者即将会用 ...

  10. Java Persistence with MyBatis 小结1

    数据持久层做的工作是1)将从数据库中查询到的数据生成需要的java对象:2)将 Java 对象中的数据通过 SQL 持久化到数据库中. MyBatis 通过抽象底层的 JDBC 代码,自动化 SQL ...