栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > JavaScript

JavaScript实现列表分页功能特效

JavaScript 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaScript实现列表分页功能特效

最近写了一个js分页的方法,尽管已经有现成的可以用,但还是想自己写写,搞搞清楚。最终实现的效果是:上一页、第一页、…(上n个页码)、n个页码、…(下n个页码)、最后一页、下一页。n可以是奇数也可以是偶数,一般都喜欢取奇数,星石调用的时候传入的参数是5。写的时候,主要注意了以下几个地方:

 页码等于1时,只显示上一页、第一页、最后一页,且都没有跳转;
 页码小于等于2时,不需要中间的n个页码;
 页码小于等于n时,显示所有页码,不显示2个“…”;
 2个“…”换页时,换n个页码,如果接近最前面或最后面几页了,则显示最前面或最后面n个页码。

  下面贴出代码,供大家探讨:

//总页数,当前页数,跳转地址,第一页和最后一页之间显示的页码数量
function pageBar(tp,cp,url,pn){
    var str = ‘
    '; if(tp>1 && cp>1){ var prev = cp-1; str += ‘
  • 上一页
  • ‘; }else{ str += ‘
  • 上一页
  • ‘; } if(tp>1){ //第一页 if(cp==1){ str +=‘
  • 1
  • ‘; }else{ str +=‘
  • 1
  • ‘; } if(tp>2){ var pnh = Math.floor(pn/2); //循环开始页码 var s = cp-pnh; if(s<=1){ s = 2; } //循环结束页码 var e = cp+pnh; if(e>=tp){ e = tp-1; } if(s<=(1+pnh)){ if(tp>(pn+2)){ e = s+(pn-1); if(e>=tp){ e = tp-1; } }else{ s = 2; } } if(e>=(tp-pnh)){ if(tp>(pn+2)){ s = e-(pn-1); if(s<=1){ s = 2; } }else{ e = tp-1; } } if(e2){ var sp = cp-pn; if(sp<1){ sp=1; } str += ‘
  • ‘; } for(var i=s;i<=e;i++){ if(i==cp){ str += ‘
  • '+i+‘
  • ‘; }else{ str += ‘
  • '+i+‘
  • ‘; } } //最后一页前的多页跳转 if(e < (tp-1)){ var ep = cp+pn; if(ep>tp){ ep=tp; } str += ‘
  • ‘; } } //最后一页 if(cp==tp){ str +=‘
  • '+tp+‘
  • ‘; }else{ str +=‘
  • '+tp+‘
  • ‘; } }else{ str +=‘
  • 1
  • ‘; } if(tp>1 && cp下一页'; }else{ str += ‘
  • 下一页
  • '; } str += ‘
'; return str; } //跳转页码,跳转地址 function goPage(cp,url){ window.location.href = url+cp; }

以上所述就是本文的全部内容了,希望大家能够喜欢。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/102500.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号