心扬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 相关文章推荐
经常用到的JavasScript事件的翻译
Apr 09 Javascript
调用HttpHanlder的几种返回方式小结
Dec 20 Javascript
页面加载完成后再执行JS的jquery写法以及区别说明
Feb 22 Javascript
jQuery异步加载数据并添加事件示例
Aug 24 Javascript
JavaScript获取当前网页最后修改时间的方法
Apr 03 Javascript
基于pako.js实现gzip的压缩和解压功能示例
Jun 13 Javascript
微信小程序实现保存图片到相册功能
Nov 30 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
Sep 21 Javascript
node crawler如何添加promise支持
Feb 01 Javascript
JavaScript对象原型链原理详解
Feb 05 Javascript
React.js组件实现拖拽排序组件功能过程解析
Apr 27 Javascript
手把手教你从零开始react+antd搭建项目
Jun 03 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
基于mysql的bbs设计(四)
2006/10/09 PHP
ThinkPHP使用心得分享-上传类UploadFile的使用
2014/05/15 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
用Javascript实现Sleep暂停功能代码
2010/09/03 Javascript
FF火狐下获取一个元素同类型的相邻元素实现代码
2012/12/15 Javascript
JS中的substring和substr函数的区别说明
2013/05/07 Javascript
扩展js对象数组的OrderByAsc和OrderByDesc方法实现思路
2013/05/17 Javascript
解析使用JS 清空File控件的路径值
2013/07/08 Javascript
jquery实现div阴影效果示例代码
2013/09/16 Javascript
jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
2014/05/22 Javascript
JavaScript常用脚本汇总(一)
2015/03/04 Javascript
AngularJS基础学习笔记之控制器
2015/05/10 Javascript
微信小程序开发之数据存储 参数传递 数据缓存
2017/04/13 Javascript
使用MUI框架模拟手机端的下拉刷新和上拉加载功能
2017/09/04 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
vue data引入本地图片的两种方式小结
2019/11/13 Javascript
[02:41]辉夜杯现场一家三口 “我爸玩风行 我玩血魔”
2015/12/27 DOTA
[53:52]OG vs EG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
初学Python实用技巧两则
2014/08/29 Python
Python3使用requests登录人人影视网站的方法
2016/05/11 Python
Python实现采用进度条实时显示处理进度的方法
2017/12/19 Python
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
Python 移动光标位置的方法
2019/01/20 Python
关于pytorch多GPU训练实例与性能对比分析
2019/08/19 Python
比较基础的php面试题及答案-编程题
2012/10/14 面试题
编程实现当输入某产品代码则打印出该产品记录的功能
2014/05/03 面试题
旅游项目开发策划书
2014/01/18 职场文书
《水上飞机》教学反思
2014/04/10 职场文书
生态养殖创业计划书
2014/05/06 职场文书
2014年采购工作总结
2014/11/20 职场文书
2014年城市管理工作总结
2014/12/02 职场文书
班主任高考寄语
2015/02/26 职场文书
党员廉政准则心得体会
2016/01/20 职场文书
python使用pywinauto驱动微信客户端实现公众号爬虫
2021/05/19 Python
Python图片处理之图片裁剪教程
2021/05/27 Python