JavaScript EasyPager 分页函数


Posted in Javascript onMay 25, 2011
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))); 
};
Javascript 相关文章推荐
JavaScript学习笔记(十)
Jan 17 Javascript
jquery随机展示头像代码
Dec 21 Javascript
表头固定(利用jquery实现原理介绍)
Nov 08 Javascript
判断在css加载完毕后执行后续代码示例
Sep 03 Javascript
JavaScript驾驭网页-获取网页元素
Mar 24 Javascript
Bootstrap媒体对象的实现
May 01 Javascript
利用jquery给指定的table动态添加一行、删除一行的方法
Oct 12 Javascript
jquery-mobile基础属性与用法详解
Nov 23 Javascript
JavaScript面试题(指针、帽子和女朋友)
Nov 23 Javascript
jQuery用noConflict代替$的实现方法
Apr 12 jQuery
layui文件上传实现代码
May 20 Javascript
jQuery validata插件实现方法
Jun 25 jQuery
浅说js变量
May 25 #Javascript
潜说js对象和数组
May 25 #Javascript
一些常用的JavaScript函数(json)附详细说明
May 25 #Javascript
javascript中万恶的function实例分析
May 25 #Javascript
js 页面关闭前的出现提示的实现代码
May 25 #Javascript
仅IE不支持setTimeout/setInterval函数的第三个以上参数
May 25 #Javascript
IE6/7/8/9不支持exec的简写方式
May 25 #Javascript
You might like
PHP与已存在的Java应用程序集成
2006/10/09 PHP
PHP 地址栏信息的获取代码
2009/01/07 PHP
php版本的cron定时任务执行器使用实例
2014/08/19 PHP
ThinkPHP实现附件上传功能
2017/04/27 PHP
javascript编程起步(第二课)
2007/02/27 Javascript
仿163填写邮件地址自动显示下拉(无优化)
2008/11/05 Javascript
Document 对象的常用方法
2009/07/31 Javascript
转换json格式的日期为Javascript对象的函数
2010/07/13 Javascript
JS 进度条效果实现代码整理
2011/05/21 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
javascript 面向对象封装与继承
2014/11/27 Javascript
node.js中的url.format方法使用说明
2014/12/10 Javascript
js实现动画特效的文字链接鼠标悬停提示的方法
2015/03/02 Javascript
javascript获取本机操作系统类型的方法
2015/08/13 Javascript
angularJs关于指令的一些冷门属性详解
2016/10/24 Javascript
微信小程序仿美团城市选择
2018/06/06 Javascript
jQuery仿移动端支付宝键盘的实现代码
2018/08/15 jQuery
Vue.set 全局操作简单示例
2019/09/19 Javascript
JS实现json数组排序操作实例分析
2019/10/28 Javascript
python thread 并发且顺序运行示例
2009/04/09 Python
分析在Python中何种情况下需要使用断言
2015/04/01 Python
Python 闭包的使用方法
2017/09/07 Python
python 判断字符串中是否含有汉字或非汉字的实例
2019/07/15 Python
python3 deque 双向队列创建与使用方法分析
2020/03/24 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
Python常用数字处理基本操作汇总
2020/09/10 Python
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
ASOS西班牙官网:英国在线时尚和美容零售商
2020/01/10 全球购物
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
《美丽的黄昏》教学反思
2014/02/28 职场文书
初中英语课后反思
2014/04/25 职场文书
2015年企业新年寄语
2014/12/08 职场文书
2015年车间主任工作总结
2015/05/21 职场文书
2016新教师培训心得体会范文
2016/01/08 职场文书
自荐信大全
2019/03/21 职场文书
MySql数据库 查询时间序列间隔
2022/05/11 MySQL