纯js分页代码(简洁实用)_javascript技巧
//每页显示字数
PageSize=5000;
//分页模式
flag=2;//1:根据字数自动分页 2:根据[NextPage]分页
//默认页
startpage = 1;
//导航显示样式 0:常规 1:直接 3:下拉
TopShowStyle = 1;
DownShowStyle = 0;
var currentSet,CutFlag,TotalByte,PageCount,key,tempText,tempPage;
key="";
currentSet=0;
var Text=xmlArticle.selectSingleNode("//Content").text;
TotalByte=Text.length;
if (flag==1)
{
PageCount=Math.round(TotalByte/PageSize);
if(parseFloat("0."+TotalByte%PageSize)>0){
if(parseFloat("0."+TotalByte%PageSize) PageCount=PageCount+1;
}
}
var PageNum=new Array(PageCount+1);
var PageTitle=new Array(PageCount+1);
PageNum[0]=0;
PageTitle[0]="";
var sDrv1,sDrv2,sDrv3,sDrv4,sFlag;
var sDrvL,sTemL;
var sTem1,sTem2,k;
sFlag=0;
for(j=1;j
PageTitle[j]="";
//alert(j);
sDrv1="
";
sDrv2="
";
sDrv3="
";
sDrv4="
";
sDrvL=sDrv1.length;
for(k=PageNum[j];k sTem1=Text.substring(PageNum[j]-sDrvL,k);
sTemL=sTem1.length;
sTem2=sTem1.substring(sTemL-sDrvL,sTemL)
if (sTem2==sDrv1 || sTem2==sDrv2 || sTem2==sDrv3 || sTem2==sDrv4)
{
sFlag=sFlag+1;
PageNum[j]=k;
break;
}
}
if (PageNum[j]>TotalByte)
{
break;
}
}
if (j
PageNum.length=j;
PageCount=j
}
if (PageCount>1&&sFlag>1&&PageCount
PageCount=sFlag+1;
}
}
else{
//手动分页
var j,sFlag,PageCount,sText;
var sTitleFlag;
var PageNum=new Array();
var PageTitle=new Array();
PageSize=0;
j=1;
PageNum[0]=-10;
PageTitle[0]="";
sFlag=0;
sText=Text;
do
{
sText=Text.substring(PageNum[j-1]+10,TotalByte);
sFlag=sText.indexOf("[NextPage");
if (sText.substring(sFlag+9,sFlag+10)=="=")
{
sTitleFlag=sText.indexOf("]",sFlag);
PageTitle[j]=sText.substring(sFlag+10,sTitleFlag);
}
else{
PageTitle[j]="";
}
if (sFlag>0)
{
PageNum[j]=sFlag+PageNum[j-1]+10;
}
else{
PageNum[j]=TotalByte;
}
j+=1; PageCount=j-1; function text_pagination(Page){ if(Page==null){Page=1;} Output=""; //头部功能导航条 //正文查找 //页码显示方式一 //显示方式二 //显示方式三 Output=Output+"
}
while (PageNum[j-1]
}
var Output,Byte;
Output=Output+"";
";
Output=Output+""; ";
Output=Output+"";
Output=Output+"
Output=Output+"";
";
Output=Output+" "; ";
Output=Output+"";
Output=Output+"
Output=Output+"";
";
//第x页:分页标题
if (Page==0 || PageCount==0){
Output=Output+"当前是:全文显示" ;
}
else{
if(TotalByte>PageSize){Byte=PageNum[Page]-PageNum[Page-1]}else{Byte=TotalByte};
Output=Output+"第 "+Page+" 页";
if (PageTitle[Page]!="")
{
Output=Output+":"+PageTitle[Page]+"";
}
Output+=' ';
}
//下拉菜单选择
//if (PageCount>0)
//{
// Output=Output+Article_PageNav(2,Page);
// Output=Output+"
//}
//页码选择列表
//Output=Output+""; ";
//Output=Output+Article_PageNav(0,Page);
//Output=Output+"
Output=Output+""; ";
Output=Output+"";
Output=Output+"
Output=Output+"
//显示正文
if(Page==0) {
//不分页
tempText=Text;
}
else{
//分页
if (flag==1)
//自动分页
{
tempText=Text.substring(PageNum[Page-1],PageNum[Page]);
}
else{
//手动分页
if (PageTitle[Page-1].length==0)
{
tempText=Text.substring(PageNum[Page-1]+10,PageNum[Page]);
}
else{
tempText=Text.substring(PageNum[Page-1]+11+PageTitle[Page-1].length,PageNum[Page]);
}
}
}
//布置内容
Output=Output+"
Output=Output+Article_PageNav(TopShowStyle,Page);
Output=Output+"
Output=Output+"
Output=Output+tempText;
Output=Output+"
Output=Output+"
";
Output=Output+"
Output=Output+Article_PageNav(DownShowStyle,Page);
Output=Output+"
article.innerHTML = Output;
if (Page>1)
{
document.location.href='#top';
}
eval(document.all.keys).value=key;
if (key!=""){searchkey();}
}
function searchkey(){
//正文查找函数
h="";
f="";
keyset=new Array();
key=document.all.keys.value;
if (key==""){
alert("请输入关键字!");
return;
}
else{
keyset[0]=tempText.indexOf(key,0);
if (keyset[0] return;
}else
temp=tempText.substring(0,keyset[0]);
temp=temp+h+key+f;
temp2=tempText.substring(keyset[0]+key.length,tempText.length);
for (i=1;i
if(keyset[i] temp=temp+tempText.substring(keyset[i-1]+key.length,tempText.length);
break;
}else{
temp=temp+tempText.substring(keyset[i-1]+key.length,keyset[i])+h+key+f;
}
}
world.innerHTML = temp;
}
}
function Article_PageNav(ShowStyle,Page){
//分页码显示函数
//参数为调用样式,0=简单样式,1=标准样式
var temp="";
if (ShowStyle==0)
//简单样式
{
tempPage=Page;
if(TotalByte>PageSize){
if (Page-4 temp=temp+"9";
if (Page7";}else{temp=temp+"7";}
if (PageCount>10){
for(i=1;i if (i==Page){
temp=temp+""+i+" ";
}else{
temp=temp+""+i+""+" ";
}
}
temp=temp+" ...";
}
else{
for(i=1;i
temp=temp+""+i+" ";
}
else{
temp=temp+""+i+""+" ";
}
}
}
if (Page==PageCount){temp=temp+"8";}else{temp=temp+"8";}
if(PageCount:";}else{temp=temp+":";}
}
else if(Page+4 temp=temp+"9";
temp=temp+"7";
if (PageCount>10){
temp=temp+"..";
for(i=Page-4;i
temp=temp+""+i+" ";
}
else{
temp=temp+""+i+""+" ";
}
}
temp=temp+" ..";
}
else{
for(i=1;i
temp=temp+""+i+" ";
}
else{
temp=temp+""+i+""+" ";
}
}
}
if (Page==PageCount){temp=temp+"8";}else{temp=temp+"8";}
temp=temp+":";
}
else{
temp=temp+"9";
temp=temp+"7";
temp=temp+".."
for(i=Page-2;i
temp=temp+""+i+" ";
}
else{
temp=temp+""+i+""+" ";
}
}
if (Page==PageCount){temp=temp+"8";}else{temp=temp+"8";}
temp=temp+":";
}
}
else{
temp=temp+"1 ";
}
temp=temp+" 显示全部"
}
else if (ShowStyle==1)
//标准样式
{
if(TotalByte>PageSize){if(Page!=0){if(Page!=1){temp=temp+"[上一页] ";}}}
for (i=1;i
if (Page==i)
{
temp=temp+"["+i+"] ";
}
else{
temp=temp+"["+i+"] ";
}
}
temp=temp+"";
if(TotalByte>PageSize){if(Page!=0){if(Page!=PageCount){temp=temp+"[下一页]";}}}
temp=temp+" 显示全部"
}
else if (ShowStyle==2)
//下拉菜单样式
{
temp=temp+'";
}
return (temp);
}
//默认页
text_pagination(startpage);
--------------分页js代码结束--------------
------------html页面,调用分页js------------------
|
推荐阅读
-
一些技巧性实用js代码小结_javascript技巧
-
纯js写的分页表格数据为json串_javascript技巧
-
纯js实现背景图片切换效果代码_javascript技巧
-
在Z-Blog中运行代码[html][/html](纯JS版)_javascript技巧
-
javascript分页代码实例分享(js分页)_javascript技巧
-
js对文章内容进行分页示例代码_javascript技巧
-
javascript分页代码实例分享(js分页)_javascript技巧
-
纯js网页画板(Graphics)类简介及实现代码_javascript技巧
-
简单实用的js调试logger组件实现代码_javascript技巧
-
纯js简单日历实现代码_javascript技巧