js分页工具实例


Posted in Javascript onJanuary 28, 2015

本文实例讲述了js分页工具的用法。分享给大家供大家参考。具体实现方法如下:

js代码部分:

/**  

 * 分页js  

 */  

var Page;  

  

(function(){  

        var Page = {version:"1.0",author:"liuxingmi"};  

        var showPage = 9;  

        Page.navigation = function(divId, totalRecord, totalPage, currentPage, func){  

            var nav = '<ul class=\"pagination\" title=\"分页列表\">';  

                   nav += '<li class="totalAnnal">总记录数:<i id="totalRecord">' + totalRecord +'</i></li>';  

                   nav += '<li class="totalPage">总页数:<i id="totalPage">' + totalPage + '</i></li>';  

                   nav += '<li class="currentPage">当前页:<b id="pageNum">' + currentPage + '</b></li>';  

                   if(currentPage == 1){  

                       nav += '<li class="firstPage currentState"><a href="javascript:void(0);" id="firstPage" title="首页">首页</a></li>';  

                       nav += '<li class="previousPage currentState"><a href="javascript:void(0);" id="frontPage" title="前一页">前一页</a></li>';  

                   } else {                      

                       nav += '<li class="firstPage"><a href="javascript:' + func + '(1);" id="firstPage" title="首页">首页</a></li>';  

                       nav += '<li class="previousPage"><a href="javascript:' + func + '('+ (currentPage -1) +');" id="frontPage" title="前一页">前一页</a></li>';  

                   }  

                   nav += '<li id="num"><ol>';  

                         var start = currentPage - Math.floor(showPage/2);  

                         var end = currentPage + Math.floor(showPage/2);

                         if(end > totalPage){  

                             start -= (end - totalPage);  

                         }  

                           

                         if(start <= 0){  

                             start = 1;   

                         }  

                         if(currentPage < showPage && end < showPage){  

                            end = showPage;    

                         }  

                           

                         if(end > totalPage){  

                             end = totalPage;  

                         }  

                         for(var i = start; i <= end; i++){  

                             if(i == currentPage){  

                                 nav += '<li class="currentState"><a title="转到第1页" href="javascript:' + func + '(' + i + ');">' + i + '</a></li>';  

                             } else {                                  

                                 nav += '<li><a title="转到第1页" href="javascript:' + func + '(' + i + ');">' + i + '</a></li>';  

                             }  

                         }  

                           

                         nav += '</ol></li>';  

                         if(currentPage == totalPage){  

                             nav += '<li class="nextPage currentState"><a href="javascript:void(0);" id="nextPage" title="后一页">后一页</a></li>';  

                             nav +='<li class="lastPage currentState"><a href="javascript:void(0);" id="lastPage" title="尾页">尾页</a></i>';  

                         } else {  

                             nav += '<li class="nextPage"><a href="javascript:' + func + '('+ (currentPage + 1) +');" id="nextPage" title="后一页">后一页</a></li>';  

                             nav +='<li class="lastPage"><a href="javascript:' + func + '(' + totalPage + ');" id="lastPage" title="尾页">尾页</a></i>';  

                         }  

                         nav += '</ul>';      

            $("#" + divId).html(nav);             

        };  

       this.Page = Page;  

})();

css部分:

/*分页样式开始*/  

.pagination{  

 overflow:hidden;  

 margin:0 0 0 25px;  

 padding:10px 10px 6px 150px;  

 border-top:1px solid #c8c8c8;  

 _zoom:1;  

 text-align: center;  

}  

.pagination *{  

 display:inline;  

 float:left;  

 margin:0;  

 padding:0;  

 font-size:12px;  

}  

.pagination i{  

 float:none;  

 padding-right:1px;  

}  

.currentPage b{  

 float:none;  

 color:#f00;  

}  

.pagination li{  

 list-style:none;  

 margin:0 5px;  

}  

.pagination li li{  

 position:relative;  

 margin:-2px 0 0;  

 font-family: Arial, Helvetica, sans-serif  

}  

.firstPage a,.previousPage a,.nextPage a,.lastPage a{  

 overflow:hidden;  

 height:0;  

 text-indent:-9999em;  

 border-top:8px solid #fff;  

 border-bottom:8px solid #fff;  

}  

.pagination li li a{  

 margin:0 1px;  

 padding:0 4px;  

 border:3px double #fff;  

 +border-color:#eee;  

 background:#eee;  

 color:#06f;  

 text-decoration:none;  

}  

.pagination li li a:hover{  

 background:#f60;  

 border-color:#fff;  

 +border-color:#f60;  

 color:#fff;  

}  

li.firstPage{  

 margin-left:40px;  

 border-left:3px solid #06f;  

}  

.firstPage a,.previousPage a{  

 border-right:12px solid #06f;  

}  

.firstPage a:hover,.previousPage a:hover{  

 border-right-color: #f60;  

}  

.nextPage a,.lastPage a{  

 border-left:12px solid #06f;  

}  

.nextPage a:hover,.lastPage a:hover{  

 border-left-color:#f60;  

}  

.pagination li.lastPage{  

 border-right:3px solid #06f;  

}  

.pagination li li.currentState a{  

 position:relative;  

 margin:-1px 3px;  

 padding:1px 4px;  

 border:3px double #fff;  

 +border-color:#f60;  

 background:#f60;  

 color:#fff;  

}  

.pagination li.currentState,.currentState a,.currentState a:hover{  

 border-color:#fff #ccc;  

 cursor:default;  

}  

/*分页样式结束*/

调用方法:

Page.navigation("pageNav", 100, 10,  1, "xxxList");
<div id="pageNav"></div>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript语言中的Literal Syntax特性分析
Mar 08 Javascript
js实现页面转发功能示例代码
Aug 05 Javascript
jquery实现图片左右切换的方法
May 07 Javascript
详解JavaScript对象序列化
Jan 19 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
Aug 29 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
Jan 03 Javascript
了解VUE的render函数的使用
Jun 08 Javascript
vue2.X组件学习心得(新手必看篇)
Jul 05 Javascript
详解Immutable及 React 中实践
Mar 01 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
Aug 17 Javascript
vuex实现数据状态持久化
Nov 11 Javascript
jQuery实现可以计算进制转换的计算器
Oct 19 jQuery
js制作简易年历完整实例
Jan 28 #Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
Jan 28 #Javascript
调试JavaScript中正则表达式中遇到的问题
Jan 27 #Javascript
JavaScript插件化开发教程 (四)
Jan 27 #Javascript
JavaScript插件化开发教程 (三)
Jan 27 #Javascript
js实现简单随机抽奖的方法
Jan 27 #Javascript
JavaScript插件化开发教程 (二)
Jan 27 #Javascript
You might like
BBS(php &amp; mysql)完整版(八)
2006/10/09 PHP
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
php实现上传图片文件代码
2015/07/19 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
IE6中使用position导致页面变形的解决方案(js代码)
2011/01/09 Javascript
JS 添加千分位与去掉千分位的示例
2013/07/11 Javascript
关于extjs4如何获取grid修改后的数据的问题
2013/08/07 Javascript
javascript仿php的print_r函数输出json数据
2013/09/13 Javascript
js用正则表达式来验证表单(比较齐全的资源)
2013/11/17 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
js图片闪动特效可以控制间隔时间如几分钟闪动一下
2014/08/12 Javascript
jquery制作 随机弹跳的小球特效
2015/02/01 Javascript
基于JavaScript实现弹出框效果
2016/02/19 Javascript
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
2017/08/09 jQuery
JS实现的雪花飘落特效示例
2019/12/03 Javascript
vue项目中使用多选框的实例代码
2020/07/22 Javascript
请求时token过期自动刷新token操作
2020/09/11 Javascript
Python文件和目录操作详解
2015/02/08 Python
python 美化输出信息的实例
2018/10/15 Python
python面向对象法实现图书管理系统
2019/04/19 Python
torch 中各种图像格式转换的实现方法
2019/12/26 Python
python利用opencv实现SIFT特征提取与匹配
2020/03/05 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
python3爬虫中多线程进行解锁操作实例
2020/11/25 Python
Funko官方商店:源自美国,畅销全球搪胶收藏玩偶
2018/09/15 全球购物
Coggles美国/加拿大:高级国际时装零售商
2018/10/23 全球购物
入党转预备思想汇报
2014/01/07 职场文书
好军嫂事迹材料
2014/01/15 职场文书
模范教师事迹材料
2014/02/10 职场文书
《青海高原一株柳》教学反思
2014/04/25 职场文书
机关党员四风问题个人整改措施
2014/10/26 职场文书
校园环境卫生倡议书
2015/04/29 职场文书
少儿励志名言(80句)
2019/08/14 职场文书
Win11安装受阻怎么办? Windows11安装问题与解决方案汇总
2021/11/21 数码科技
Sql Server之数据类型详解
2022/02/28 SQL Server