心扬JS分页函数代码


Posted in Javascript onSeptember 10, 2010
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>JS分页</title> 
<style type="text/css"> 
body{font-size:12px;} 
#pager{ height:20px; float:left;} 
#pager a{height:18px; line-height:18px; border:1px solid #ccc; padding-left:0.4em; padding-right:0.4em; text-decoration:none; display:block; float:left; margin:0px 3px;} 
#pager a:hover{background-color:#1f3a87; color:#fff; text-decoration:none;} 
.not-current{background-color:#fff; color:#1f3a87;} 
.current{background-color:#1f3a87; color:#fff; text-decoration:none;} 
</style> 
</head> 
<body onload="CreatePager(10,10,2043,'?page=14',10)"> 
<script type="text/javascript"> 
//pageSize,每页显示多少条记录,currentPage当前页,recordCount共有多少条记录,url页面路径,必须带有page参数,numCount,每页显示多少个分页数字 
var CreatePager=function(pageSize,currentPage,recordCount,url,numCount){ 
//创建一个链接 
var CreateHref=function(url,page,p_ele,t,currentPage){ 
var a=document.createElement('a'); 
var reg=new RegExp("page=\\d+"); 
url=url.replace(reg.exec(url),'page='+page) 
a.setAttribute('href',url); 
a.setAttribute('class',currentPage==page?'current':'not-current'); 
var t=document.createTextNode(t); 
a.appendChild(t); 
document.getElementById(p_ele).appendChild(a); 
} 
//计算属于哪个区间 
var GetNumArea=function(num,numCount,pageCount){ 
var currentArea=parseInt((num-1)/numCount)+1; 
var lastArea=parseInt((pageCount-1)/numCount)+1; 
this.minNum=(currentArea-1)*numCount+1; 
var tempTaxNumber=currentArea*numCount+1; 
this.maxNum=tempTaxNumber>pageCount?pageCount:tempTaxNumber; 
this.preAreaNum=currentArea<=1?1:this.minNum-1; 
this.afterAreaNum=currentArea>=lastArea?pageCount:this.maxNum+1; 
} 
var pageCount=0;//总页数 
pageCount=recordCount%pageSize===0?recordCount/pageSize:parseInt(recordCount/pageSize)+1;//总页数 
// var pager=document.getElementById('pager');//获取分页的元素 
// var pageSummary=document.createElement('span');//创建一个DIV,在里面显示第几页共几页 
// var summaryContent=document.createTextNode('第'+currentPage+'页共'+pageCount+'页'); 
// pageSummary.appendChild(summaryContent); 
// pager.appendChild(pageSummary); 
CreateHref(url,1,'pager','首页',currentPage);//添加首页链接 
CreateHref(url,new GetNumArea(currentPage,numCount,pageCount).preAreaNum,'pager','<<',currentPage);//添加前面的省略号 
//显示分页数字 开始 
var pageArea = pageCount / numCount;// 页码区间 
if(pageCount<numCount){ 
for(i=1;i<=pageCount;i++){ 
CreateHref(url,i,'pager',i,currentPage); 
} 
}else{ 
currentPage=currentPage>=pageCount?pageCount:currentPage; 
var minNum=new GetNumArea(currentPage,numCount,pageCount).minNum; 
var maxNum=new GetNumArea(currentPage,numCount,pageCount).maxNum; 
for(i=minNum;i<maxNum;i++){ 
CreateHref(url,i,'pager',i,currentPage); 
} 
} 
//显示分页数字 结束 
CreateHref(url,new GetNumArea(currentPage,numCount,pageCount).afterAreaNum,'pager','>>',currentPage);//显示分页后面的省略号 
CreateHref(url,pageCount,'pager','末页',currentPage);//添加末页链 
} 
</script> 
<div id='pager'></div> 
</body> 
</html>
Javascript 相关文章推荐
Javascript实例教程(19) 使用HoTMetal(4)
Dec 23 Javascript
张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
Feb 03 Javascript
jquery animate 动画效果使用说明
Nov 04 Javascript
jQuery autocomplate 自扩展插件、自动完成示例代码
Mar 28 Javascript
jquery 删除cookie失效的解决方法
Nov 12 Javascript
firefox下jquery ajax返回object XMLDocument处理方法
Jan 26 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
Aug 27 Javascript
jQuery实现固定在网页顶部的菜单效果代码
Sep 02 Javascript
BootStrap selectpicker后台动态绑定数据的方法
Jul 28 Javascript
Javascript 编码约定(编码规范)
Mar 11 Javascript
vue.js中npm安装教程图解
Apr 10 Javascript
Element图表初始大小及窗口自适应实现
Jul 10 Javascript
JavaScript中获取元素索引的函数
Sep 10 #Javascript
document.getElementById的简写方式(获取id对象的简略写法)
Sep 10 #Javascript
一些常用且实用的原生JavaScript函数
Sep 08 #Javascript
js location.replace与location.reload的区别
Sep 08 #Javascript
js中匿名函数的N种写法
Sep 08 #Javascript
JavaScript与Div对层定位和移动获得坐标的实现代码
Sep 08 #Javascript
javascript循环变量注册dom事件 之强大的闭包
Sep 08 #Javascript
You might like
实用的简单PHP分页集合包括使用方法
2013/10/21 PHP
php生成随机字符串可指定纯数字、纯字母或者混合的
2014/04/18 PHP
PHP中if和or运行效率对比
2014/12/12 PHP
php利用smtp类实现电子邮件发送
2015/10/30 PHP
最新最全PHP生成制作验证码代码详解(推荐)
2016/06/12 PHP
php获取目录中所有文件名及判断文件与目录的简单方法
2017/03/04 PHP
js 通过cookie实现刷新不变化树形菜单
2014/10/30 Javascript
javascript里使用php代码实例
2014/12/13 Javascript
浅谈javascript对象模型和function对象
2014/12/26 Javascript
jQuery实现左右切换焦点图
2015/04/03 Javascript
jQuery Validate表单验证入门学习
2015/12/18 Javascript
详解js中call与apply关键字的作用
2016/11/21 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
从零学习node.js之搭建http服务器(二)
2017/02/21 Javascript
create-react-app构建项目慢的解决方法
2018/03/14 Javascript
layui文件上传控件带更改后数据传值的方法
2019/09/23 Javascript
简要讲解Python编程中线程的创建与锁的使用
2016/02/28 Python
jupyter安装小结
2016/03/13 Python
python监控键盘输入实例代码
2018/02/09 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
selenium+python自动化测试之页面元素定位
2019/01/23 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
2019/07/11 Python
Python爬虫实现“盗取”微信好友信息的方法分析
2019/09/16 Python
python sorted函数的小练习及解答
2019/09/18 Python
Pytorch之contiguous的用法
2019/12/31 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
Django限制API访问频率常用方法解析
2020/10/12 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
python使用正则表达式匹配txt特定字符串(有换行)
2020/12/09 Python
Merrell美国官网:美国登山运动鞋品牌
2018/02/07 全球购物
德国旅游网站:weg.de
2018/06/03 全球购物
Linux机考试题
2015/07/17 面试题
我们的节日端午节活动方案
2014/03/02 职场文书
2014年化验员工作总结
2014/11/18 职场文书
2014年法院工作总结
2014/11/24 职场文书
聊聊redis-dump工具安装问题
2022/01/18 Redis