新闻内页-JS分页

2016-02-19 12:53 14 1 收藏

下面图老师小编跟大家分享新闻内页-JS分页,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

【 tulaoshi.com - Web开发 】

'//判断内容里是不是包含这个分页标签
if instr(cinfo,"[NextPage]")0 then
flag=1
else
flag=0
end if

'//设置参数
script language="Javascript"
var Text,PageSize,flag
Text="%=DealJsText(cinfo)%";
PageSize=1500;
flag=%=flag%;
/script

'//JS文件包函
script language="Javascript" src="CutArticle.js"/script

'//文本显示
span class="news"
div id="article" style="font-size:12px;"/div
script language="JavaScript"
if (flag==1 || flag==2){
text_pagination(1);
}
else{
article.innerHTML=Text;
}
/script
/span

'//下面为JS文本处理函数

function DealJsText(Str)
if not isnull(Str) then
Dim re,po,ii
Str = Replace(Str, CHR(9), " ")
Str = Replace(Str, CHR(39), "'")
Str = Replace(Str, CHR(13), "")
Str = Replace(Str, CHR(10) & CHR(13), "/PP ")
Str = Replace(Str, CHR(10), "")
Str = Replace(Str, "‘", "'")
Str = Replace(Str, "'", "'")
Str = Replace(Str, "", "")
Str = Replace(Str, CHR(32), " ")
Str = Replace(Str, CHR(34), """")
Str = Replace(Str, CHR(39), "'")
Set re=new RegExp
re.IgnoreCase =true
re.Global=True
po=0
ii=0
re.Pattern="(javascript)"
Str=re.Replace(Str,"Ijavascript/I")
re.Pattern="(jscript:)"
Str=re.Replace(Str,"Ijscript:/I")
re.Pattern="(js:)"
Str=re.Replace(Str,"Ijs:/I")
re.Pattern="(/SCRIPT)"
Str=re.Replace(Str,"/script")
re.Pattern="(SCRIPT)"
Str=re.Replace(Str,"script")
DealJsText = Str
End if
end Function

'//下面为JS文件 CutArticle.js
var currentSet,CutFlag,TotalByte,PageCount,key,tempText,tempPage;
key="";
currentSet=0;
TotalByte=Text.length;
if (flag==1)
{
PageCount=Math.round(TotalByte/PageSize);
if(parseFloat("0."+TotalByte%PageSize)0){
if(parseFloat("0."+TotalByte%PageSize)0.5){
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;jPageCount+1;j++){
PageNum[j]=PageNum[j-1]+PageSize;
PageTitle[j]="";
//alert(j);
sDrv1="br";
sDrv2="BR";
sDrv3="Br";
sDrv4="bR";
sDrvL=sDrv1.length;
for(k=PageNum[j];k=TotalByte;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 (jPageCount)
{
PageNum.length=j;
PageCount=j
}
if (PageCount1&&sFlag1&&PageCountsFlag)
{
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 (sFlag0)
{
PageNum[j]=sFlag+PageNum[j-1]+10;
}
else{
PageNum[j]=TotalByte;
}
j+=1;
}
while (PageNum[j-1]TotalByte);
PageCount=j-1;
}

function CovertCRLFToBR(s)
{
var i;
var s2 = s;

while(s2.indexOf("[NextPage]")0)
{
i = s2.indexOf("[NextPage]");
s2 = s2.substring(0, i) + "" + s2.substring(i + 10, s2.length);
}
return s2;
}
function text_pagination(Page){
var Output,Byte;
if(Page==null){Page=1;}
Output="";
Output=Output+"table width=100% height=30 border=0 align=center cellpadding=0 cellspacing=0";
Output=Output+"tr";
Output=Output+"td height=1 background=Images/DotLine.gif/td";
Output=Output+"/tr";
//头部功能导航条
Output=Output+"tr";
//正文查找
Output=Output+"td align=left width='40%' ";
Output=Output+"input type=hidden name=keys class=iptA onchange='key=this.value' size=12 input type=hidden class=btnA name=search value='查找正文' onclick='searchkey();' style='width:60'";
Output=Output+"/td";
Output=Output+"td align=right";
//页码显示方式一
//第x页:分页标题
if (Page==0 || PageCount==0){
Output=Output+"当前是:font color=red全文显示/font" ;
}
else{
if(TotalBytePageSize){Byte=PageNum[Page]-PageNum[Page-1]}else{Byte=TotalByte};
Output=Output+"第 font color=red"+Page+"/font 页";
if (PageTitle[Page]!="")
{
Output=Output+":font color=800000"+PageTitle[Page]+"/font";
}
}
//显示方式二
//下拉菜单选择
//if (PageCount0)
//{
// Output=Output+PageNav(2,Page);
// Output=Output+" /td";
//}
//显示方式三
//页码选择列表
//Output=Output+"td align=right bgcolor=#f0faff";
//Output=Output+PageNav(0,Page);
//Output=Output+"/td";
Output=Output+"/tr";
Output=Output+"tr";
Output=Output+"td height=1 background=Images/DotLine.gif/td";
Output=Output+"/tr";
Output=Output+"/table";
//显示正文
if(Page==0) {
//不分页
tempText=CovertCRLFToBR(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+"div id=world";
Output=Output+tempText;
Output=Output+"/div";
Output=Output+"br";
Output=Output+"div align=center";
Output=Output+PageNav(1,Page);
Output=Output+"/div";

article.innerHTML = Output;
document.location.href='#';
eval(document.all.keys).value=key;
if (key!=""){searchkey();}
}

function searchkey(){
//正文查找函数
h="font class=keyworld";
f="/font";
keyset=new Array();
key=document.all.keys.value;
if (key==""){
alert("请输入关键字!");
return;
}
else{
keyset[0]=tempText.indexOf(key,0);

if (keyset[0]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;itempText.length;i++) {
keyset[i]=tempText.indexOf(key,keyset[i-1]+key.length);
if(keyset[i]0){
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 PageNav(ShowStyle,Page){
//分页码显示函数
//参数为调用样式,0=简单样式,1=标准样式
var temp="";
if (ShowStyle==0)
//简单样式
{
tempPage=Page;
if(TotalBytePageSize){
if (Page-4=1){
temp=temp+"font face=webdings color=#9999999/font";
if (Page=1){temp=temp+"font face=webdings color=#9999997/font";}else{temp=temp+"a href=javascript:text_pagination("+(Page-1)+")font face=webdings7/font/a";}
if (PageCount10){
for(i=1;i8;i++){
if (i==Page){
temp=temp+"font color=red"+i+"/font ";
}else{
temp=temp+"a href=javascript:text_pagination("+i+") "+i+"/a"+" ";
}
}
temp=temp+" ...";
}
else{
for(i=1;iPageCount+1;i++){
if (i==Page){
temp=temp+"font color=red"+i+"/font ";
}
else{
temp=temp+"a href=javascript:text_pagination("+i+") "+i+"/a"+" ";
}
}
}
if (Page==PageCount){temp=temp+"font face=webdings color=#9999998/font";}else{temp=temp+"a href=javascript:text_pagination("+(Page+1)+")font face=webdings8/font/a";}
if(PageCount10){temp=temp+"font face=webdings color=#999999:/font";}else{temp=temp+"a href=javascript:text_pagination("+PageCount+")font face=webdings:/font/a";}
}
else if(Page+4=PageCount){
temp=temp+"a href=javascript:text_pagination(1)font face=webdings9/font/a";
temp=temp+"a href=javascript:text_pagination("+(Page-1)+")font face=webdings7/font/a";
if (PageCount10){
temp=temp+"..";
for(i=Page-4;iPage+4;i++){
if (i==Page){
temp=temp+"font color=red"+i+"/font ";
}
else{
temp=temp+"a href=javascript:text_pagination("+i+") "+i+"/a"+" ";
}
}
temp=temp+" ..";
}
else{
for(i=1;iPageCount+1;i++){
if (i==Page){
temp=temp+"font color=red"+i+"/font ";
}
else{
temp=temp+"a href=javascript:text_pagination("+i+") "+i+"/a"+" ";
}
}
}

if (Page==PageCount){temp=temp+"font face=webdings color=#9999998/font";}else{temp=temp+"a href=javascript:text_pagination("+(Page+1)+")font face=webdings8/font/a";}
temp=temp+"a href=javascript:text_pagination("+PageCount+")font face=webdings:/font/a";
}
else{
temp=temp+"a href=javascript:text_pagination(1)font face=webdings9/font/a";
temp=temp+"a href=javascript:text_pagination("+(Page-1)+")font face=webdings7/font/a";
temp=temp+".."
for(i=Page-2;iPageCount+1;i++){
if (i==Page){
temp=temp+"font color=red"+i+"/font ";
}
else{
temp=temp+"a href=javascript:text_pagination("+i+") "+i+"/a"+" ";
}
}
if (Page==PageCount){temp=temp+"font face=webdings color=#9999998/font";}else{temp=temp+"a href=javascript:text_pagination("+(Page+1)+")font face=webdings8/font/a";}
temp=temp+"font face=webdings color=#999999:/font";
}
}
else{
temp=temp+"font color=red1/font ";
}
temp=temp+" a href=javascript:text_pagination(0)显示全部/a"
}
else if (ShowStyle==1)
//标准样式
{
if(TotalBytePageSize){if(Page!=0){if(Page!=1){temp=temp+"a href='#top' onclick=javascript:text_pagination("+(Page-1)+")font color=3366cc[上一页]/font/a  ";}}}
for (i=1;iPageCount+1 ;i++ )
{
if (Page==i)
{
temp=temp+"font color=800000["+i+"]/font  ";
}
else{
temp=temp+"a href='#top' onclick=javascript:text_pagination("+i+")font color=3366cc["+i+"]/font/a  ";
}
}
temp=temp+"a name='foot'/a";
if(TotalBytePageSize){if(Page!=0){if(Page!=PageCount){temp=temp+"a href='#top' onclick=javascript:text_pagination("+(Page+1)+")font color=3366cc[下一页]/font/a";}}}
temp=temp+" a href=javascript:text_pagination(0)font color=3366cc显示全部/font/a"
}
else if (ShowStyle==2)
//下拉菜单样式
{
temp=temp+'select onchange="text_pagination(this.value)"'
for (i=1;iPageCount+1 ;i++ )
{
if (Page==i)
{
temp=temp+"option value='"+i+"' selected style='color:red'第 "+i+" 页"

}
else{
temp=temp+"option value='"+i+"'第 "+i+" 页";
}
if (PageTitle[i].length!=0)
{
temp=temp+':'+PageTitle[i];
}
temp=temp+"/option";
}
temp=temp+"/select";
}

return (temp);
}

来源:http://www.tulaoshi.com/n/20160219/1602346.html

延伸阅读
标签: Web开发
!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=utf-8" / title活动公告/title style type="text/css" body,td,th {  font-family: Verdana, A...
手机腾讯新闻如何设置新闻推送   1)首先先打开,进去之后点击,接着点击。   2)然后点击,最后选择息喜欢的新闻把点亮就可以了。  
标签: Web开发
xml id="users" userGroup   user id="1"     useriduser 1/userid     namename 1/name   /user   user id="2"     useriduser 2/userid     namename 2/name   /user   user id="3"     useriduser 3/userid   ...

经验教程

411

收藏

29
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部