JavaScript EasyPager 分页函数

时间:2024-06-16 21:14:31 


var EasyPager = function(wrap,pageCount,currPage){
var d = document
,el = function(tag,inner,click,css){
tag = d.createElement(tag);
inner && (tag.innerHTML = inner);
click && (tag.onclick = click);
css && (tag.className=css);
return tag;
}
,append = function(parent,children,child){
children = [].concat(children);
for(var i=0,j=children.length;i<j;i++){
child = children[i];
child && parent.appendChild(child);
}
return parent;
}
,easyFn = function(n){return function(){EasyPager(wrap,pageCount,n)}}
,box = el("div"),firstPage,prevPage,lastPage,nextPage,startNum,endNum,pages= [];

currPage!=1 && (firstPage = el("span","<<",easyFn(1)),prevPage = el("span","<",easyFn(currPage-1)));
currPage!=pageCount && (lastPage = el("span",">>",easyFn(pageCount)),nextPage = el("span",">",easyFn(currPage+1)));
(pageCount<=10) ? (startNum=1,endNum=pageCount) : (startNum=currPage-4,endNum = currPage+5,(currPage<=5) && (startNum=1,endNum=10),(currPage>=pageCount-5)&&(endNum=pageCount,startNum=pageCount-10+1));
for(var i=startNum;i<=endNum;i++)pages.push(el("span",i,easyFn(i),i==currPage?"currSpan":null))

append((wrap.innerHTML="",wrap),append(box,[firstPage,prevPage].concat(pages).concat(nextPage,lastPage)));
};
标签:EasyPager,分页函数
0
投稿

猜你喜欢

  • Python图像处理之图像拼接

    2021-08-14 19:27:41
  • mysql 8.0.15 winx64安装配置方法图文教程

    2024-01-13 04:44:24
  • js中eval()函数和trim()去掉字符串左右空格应用

    2024-04-19 10:00:16
  • 可能是史上最细的python中import详解

    2023-01-07 18:40:07
  • python 列表,集合和字典的增删改查

    2021-06-20 04:31:37
  • mssqlserver恢复ldf文件数据的方法

    2024-01-22 11:06:54
  • mysql-connector-java.jar包的下载过程详解

    2024-01-15 18:58:40
  • jQuery实现网页抖动的菜单抖动效果

    2024-04-19 10:19:04
  • C#使用DataSet Datatable更新数据库的三种实现方法

    2024-01-13 23:38:20
  • 纯JS实现五子棋游戏兼容各浏览器(附源码)

    2024-04-25 13:14:53
  • Freemaker Replace函数的正则表达式运用

    2023-02-03 22:46:17
  • python中requests和https使用简单示例

    2021-03-16 16:14:35
  • CSS hack:区分IE6,IE7,firefox

    2007-12-23 10:25:00
  • 描述性列表的表现形式

    2008-09-17 13:43:00
  • python实现SMTP邮件发送功能

    2023-11-11 08:04:03
  • Python Socket编程入门教程

    2022-03-08 01:08:49
  • MySQL的之表结构修改

    2012-01-05 19:16:17
  • 如何让Python在HTML中运行

    2023-06-13 08:21:28
  • 解决pycharm下载库时出现Failed to install package的问题

    2021-07-30 14:15:49
  • Pytorch 扩展Tensor维度、压缩Tensor维度的方法

    2022-05-29 03:35:32
  • asp之家 网络编程 m.aspxhome.com