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学习笔记2 函数
Jan 11 Javascript
javascript中使用css需要注意的地方小结
Sep 01 Javascript
jQuery find和children方法使用
Jan 31 Javascript
jQuery 源码分析笔记(2) 变量列表
May 28 Javascript
JS阻止用户多次提交示例代码
Mar 26 Javascript
使用JQuery FancyBox插件实现图片展示特效
Nov 16 Javascript
基于jQuery和hwSlider实现内容左右滑动切换效果附源码下载(一)
Jun 22 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
Mar 31 Javascript
Webpack实现按需打包Lodash的几种方法详解
May 08 Javascript
微信小程序 按钮滑动的实现方法
Sep 27 Javascript
Vue press 支持图片放大功能的实例代码
Nov 09 Javascript
layui 上传图片 返回图片地址的方法
Sep 26 Javascript
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
vs中通过剪切板循环来循环粘贴不同内容
2011/04/30 PHP
destoon常用的安全设置概述
2014/06/21 PHP
PHP中余数、取余的妙用
2015/06/29 PHP
php源码的使用方法讲解
2019/09/26 PHP
laravel model模型定义实现开启自动管理时间created_at,updated_at
2019/10/17 PHP
体验js中splice()的强大(插入、删除或替换数组的元素)
2013/01/16 Javascript
textarea 控制输入字符字节数(示例代码)
2013/12/27 Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
2015/01/28 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
Bootstrap3制作图片轮播效果
2016/05/12 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
2017/04/27 Javascript
Vue2.0 多 Tab切换组件的封装实例
2017/07/28 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
2017/12/21 Javascript
LayerClose弹窗关闭刷新方法
2018/08/17 Javascript
关于vue3.0中的this.$router.replace({ path: '/'})刷新无效果问题
2020/01/16 Javascript
深入分析JavaScript 事件循环(Event Loop)
2020/06/19 Javascript
[53:15]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS TNC
2018/03/30 DOTA
浅谈Python2、Python3相对路径、绝对路径导入方法
2018/06/22 Python
Python日期时间对象转换为字符串的实例
2018/06/22 Python
Flask框架通过Flask_login实现用户登录功能示例
2018/07/17 Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
2018/08/03 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
python3.6使用tkinter实现弹跳小球游戏
2019/05/09 Python
详解python中的线程与线程池
2019/05/10 Python
在Django的View中使用asyncio的方法
2019/07/12 Python
python实现KNN分类算法
2019/10/16 Python
pytorch 指定gpu训练与多gpu并行训练示例
2019/12/31 Python
为什么如下的代码int a=100,b=100;long int c=a * b;不能工作
2013/11/29 面试题
后勤岗位职责
2013/11/26 职场文书
网络程序员自荐信
2014/01/25 职场文书
实验室的标语
2014/06/20 职场文书
个人自我鉴定怎么写?
2019/07/01 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS
Python djanjo之csrf防跨站攻击实验过程
2021/05/14 Python
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android
css3中transform属性实现的4种功能
2021/08/07 HTML / CSS