</head>
<body onload="CreatePager(10,10,2043,'?page=14',10)">
<script type="text/javascript">
//pageSize,每頁顯示多少條記錄,currentPage當(dāng)前頁,recordCount共有多少條記錄,url頁面路徑,必須帶有page參數(shù),numCount,每頁顯示多少個分頁數(shù)字
var CreatePager=function(pageSize,currentPage,recordCount,url,numCount){
//創(chuàng)建一個鏈接
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);
}
//計算屬于哪個區(qū)間
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;//總頁數(shù)
pageCount=recordCount%pageSize===0?recordCount/pageSize:parseInt(recordCount/pageSize)+1;//總頁數(shù)
// var pager=document.getElementById('pager');//獲取分頁的元素
// var pageSummary=document.createElement('span');//創(chuàng)建一個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);//添加前面的省略號
//顯示分頁數(shù)字 開始
var pageArea = pageCount / numCount;// 頁碼區(qū)間
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);
}
}
//顯示分頁數(shù)字 結(jié)束
CreateHref(url,new GetNumArea(currentPage,numCount,pageCount).afterAreaNum,'pager','>>',currentPage);//顯示分頁后面的省略號
CreateHref(url,pageCount,'pager','末頁',currentPage);//添加末頁鏈
}
</script>
<div id='pager'></div>
</body>
</html>