js实现前端分页页码管理


Posted in Javascript onJanuary 06, 2017

用JS实现前端分页页码管理,可以很美观的区分页码显示(这也是参考大多数网站的分页页码展示),能够有很好的用户体验,这也是有业务需要就写了一下,还是新手,经验不足,欢迎指出批评!

首先先看效果图:

这是初始页面(也就是第一页)的界面,如果为第一页时,则首页和上一页按钮不可用,为了展示分页的效果,我当前的分页是一条一页

js实现前端分页页码管理

这是页码大于5页时展示的效果:1,2页始终始终显示(考虑到用户体验)

js实现前端分页页码管理

这是最后一页的效果图:

js实现前端分页页码管理

下面直接上js代码:

//页码显示
 $(function(){
  var dqPage = $("#dqPage").text();//得到当前页数
  dqPage = parseInt(dqPage);//得到的文本转成int
  var pageCount = $("#pageCount").text();//得到总页数
  pageCount = parseInt(pageCount);
  var i = 1;
  i = parseInt(i);
  var item="";
  var href = "这里是请求地址";
  if (pageCount <= 5 ) {//总页数小于五页,则加载所有页
  for (i; i <= pageCount; i++) {
   if (i == dqPage) {
   item += "<span class='disabled'>"+i+"</span>"; 
   }else{
   item += "<a href='"+href+i+"' >"+i+"</a>"; 
   }
  };
  $('#pageBtn').append(item);
  return;
  }else if (pageCount > 5) {//总页数大于五页,则加载五页
  if (dqPage < 5) {//当前页小于5,加载1-5页
   for (i; i <= 5; i++) {
   if (i == dqPage) {
    item += "<span class='disabled'>"+i+"</span>"; 
   }else{
    item += "<a href='"+href+i+"' >"+i+"</a>"; 
   }
   };
   if (dqPage <= pageCount-2) {//最后一页追加“...”代表省略的页
   item += "<span> . . . </span>";
   }
   $('#pageBtn').append(item);
   return;
  }else if (dqPage >= 5) {//当前页大于5页
   for (i; i <= 2; i++) {//1,2页码始终显示
   item += "<a href='"+href+i+"' >"+i+"</a>"; 
   }
   item += "<span> . . . </span>";//2页码后面用...代替部分未显示的页码
   if (dqPage+1 == pageCount) {//当前页+1等于总页码
   for(i = dqPage-1; i <= pageCount; i++){//“...”后面跟三个页码当前页居中显示
    if (i == dqPage) {
    item += "<span class='disabled'>"+i+"</span>"; 
    }else{
    item += "<a href='"+href+i+"' >"+i+"</a>"; 
    }
   }
   }else if (dqPage == pageCount) {//当前页数等于总页数则是最后一页页码显示在最后
   for(i = dqPage-2; i <= pageCount; i++){//...后面跟三个页码当前页居中显示
    if (i == dqPage) {
    item += "<span class='disabled'>"+i+"</span>"; 
    }else{
    item += "<a href='"+href+i+"' >"+i+"</a>"; 
    }
   }
   }else{//当前页小于总页数,则最后一页后面跟...
   for(i = dqPage-1; i <= dqPage+1; i++){//dqPage+1页后面...
    if (i == dqPage) {
    item += "<span class='disabled'>"+i+"</span>"; 
    }else{
    item += "<a href='"+href+i+"' >"+i+"</a>"; 
    }
   }
   item += "<span> . . . </span>";
   }
   $('#pageBtn').append(item);
   return;
  }
  }
 });
<%-- 得到当前页--%>
<span id="dqPage" hidden="hidden" class="disabled1 current">${page}</span>
<%-- js控制的页码显示在这个div中--%>
<div id="pageBtn" style="width: auto;display:inline-block !important;height: auto;">
</div>

这是实现js控制页码显示的所有步骤,可能有点麻烦,后续会继续优化,当然现在网上也有很多分页插件,全凭个人喜好。

至于 “首页,上一页,下一页,末页,以及跳转页,这些就看各自的需求实现了(我是用el表达式控制的)”

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
这段js代码得节约你多少时间
Dec 20 Javascript
jQuery多媒体插件jQuery Media Plugin使用详解
Dec 19 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
Apr 16 Javascript
Angular.js回顾ng-app和ng-model使用技巧
Apr 26 Javascript
全面解析Bootstrap中tab(选项卡)的使用方法
Jun 06 Javascript
Reactjs实现通用分页组件的实例代码
Jan 19 Javascript
Vue实现自定义下拉菜单功能
Jul 16 Javascript
js实现多个倒计时并行 js拼团倒计时
Feb 25 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
Jul 29 Javascript
vue 取出v-for循环中的index值实例
Nov 09 Javascript
为react组件库添加typescript类型提示的方法
Jun 15 Javascript
通过实例解析javascript Date对象属性及方法
Nov 04 Javascript
纯js实现倒计时功能
Jan 06 #Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
Jan 06 #Javascript
微信小程序开发教程-手势解锁实例
Jan 06 #Javascript
jQuery ajax的功能实现方法详解
Jan 06 #Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
Jan 06 #Javascript
Jqprint实现页面打印
Jan 06 #Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
Jan 06 #Javascript
You might like
做个自己站内搜索引擎
2006/10/09 PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
2014/08/21 PHP
php下pdo的mysql事务处理用法实例
2014/12/27 PHP
PHP实现的简单路由和类自动加载功能
2018/03/13 PHP
jquery tools之tabs 选项卡/页签
2009/07/25 Javascript
基于JQuery的密码强度验证代码
2010/03/01 Javascript
用nodejs访问ActiveX对象,以操作Access数据库为例。
2011/12/15 NodeJs
jQuery 选择器项目实例分析及实现代码
2012/12/28 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
Jquery遍历节点的方法小集
2014/01/22 Javascript
JS获取地址栏参数的几种方法小结
2014/02/28 Javascript
jQuery中:disabled选择器用法实例
2015/01/04 Javascript
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
老生常谈遮罩层 滚动条的问题
2016/04/29 Javascript
AngularJS基础 ng-class-odd 指令示例
2016/08/01 Javascript
Angularjs处理页面闪烁的解决方法
2017/03/09 Javascript
vue-cli的webpack模板项目配置文件分析
2017/04/01 Javascript
详解VueJS应用中管理用户权限
2018/02/02 Javascript
VUE重点问题总结
2018/03/19 Javascript
JS数据类型STRING使用实例解析
2019/12/18 Javascript
javascript实现画板功能
2020/04/12 Javascript
编写Python爬虫抓取暴走漫画上gif图片的实例分享
2016/04/20 Python
JPype实现在python中调用JAVA的实例
2017/07/19 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
2018/06/21 Python
Django框架orM与自定义SQL语句混合事务控制操作
2019/06/27 Python
python多线程高级锁condition简单用法示例
2019/11/07 Python
Python基于time模块表示时间常用方法
2020/06/18 Python
Pycharm安装第三方库失败解决方案
2020/11/17 Python
pycharm配置python 设置pip安装源为豆瓣源
2021/02/05 Python
护理专业求职信
2014/06/15 职场文书
2014年科普工作总结
2014/12/06 职场文书
导游词之鲁迅祖居
2019/10/17 职场文书
祝福语集锦:给百岁老人祝寿贺词
2019/11/19 职场文书
python中的plt.cm.Paired用法说明
2021/05/31 Python
Python matplotlib绘制雷达图
2022/04/13 Python
JS前端轻量fabric.js系列物体基类
2022/08/05 Javascript