超长文章自动分页(含HTML),用ASP和Javascript实现

原创 2004年09月20日 10:36:00

这两天看到有朋友提出文章自动分页的问题,贴出我原来系统中的一部分代码,供大家参照,看是否有需要改进的地方或有更好的建议,其实偶们公司最近的项目都是用c#,ASP已经很少用了...
这里只贴出了一部分代码,有兴趣的朋友,可以在
http://demo.jaron.cn 测试,管理端 http://demo.jaron.cn/admintools 帐号和密码都是 demo

生成后的页面的演示:
---------------
http://demo.jaron.cn/SiteManager/59/2004-05/20040517001558-101502.html
http://demo.jaron.cn/SiteManager/59/2004-05/20040517001558-101502_2.html
http://demo.jaron.cn/SiteManager/59/2004-05/20040517001558-101502_3.html
http://demo.jaron.cn/SiteManager/59/2004-05/20040517001558-101502_4.html

原理:设置一个限量的字符数,按节点计算,如果一个节点的字符数未超过,那它与下一个节点合并。 直到超过这个限量,就显示出来。

JavaScript脚本部分
======================
function submitPostIfRame(mode){
 var sMarkup = doc_html.getHTML();  //从html编辑器中取数据
 with(document.forms[0]){
  doc_html.document.open();
  doc_html.document.write(sMarkup);
  doc_html.document.close();
  doc_html.document.body.innerHTML = sMarkup;
  var oBody=doc_html.document.body;
  var oHTML="";
  for(var i=0;i   if(i!=oBody.childNodes.length-1){
    if(oBody.childNodes[i].nodeType==3){
     oHTML+=oBody.childNodes[i].nodeValue+"{#CMS-PAGINATION-SYMBOL#}";
    }else{
     oHTML+=oBody.childNodes[i].outerHTML+"{#CMS-PAGINATION-SYMBOL#}";
    }
   }else{
    if(oBody.childNodes[i].nodeType==3){
     oHTML+=oBody.childNodes[i].nodeValue;
    }else{
     oHTML+=oBody.childNodes[i].outerHTML;
    }
   }
  }
  news_content.value = oHTML
 }
 return true;
}

ASP脚本部分
===============
Function calculate_pagination(strContent, pSize)
    On Error Resume Next
    Dim aCon, intfor, intCount, strTemp, strTemp2
    aCon = Split(strContent, "{#CMS-PAGINATION-SYMBOL#}", -1, 1)
    intCount = UBound(aCon)
    strTemp = ""
    strTemp2 = ""
    Page = 1
    For intfor = 0 To intCount
        strTemp = strTemp & aCon(intfor)
        strTemp2 = strTemp2 & RemoveHTML(aCon(intfor))
        'strTemp2 = strTemp2 & aCon(intFor)
        If Len(strTemp2) >= pSize Then
            Page = Page + 1
            strTemp = ""
            strTemp2 = ""
        End If
    Next
    'If strTemp2 <> "" Then Page = Page - 1
    calculate_pagination = Page
    If Err.Number <> 0 Then
        calculate_pagination = 1
        Err.Clear
    End If
End Function

Function get_page_text(strContent, pagenum, totalpage, pSize)
    aCon = Split(strContent, "{#CMS-PAGINATION-SYMBOL#}", -1, 1)
    intCount = UBound(aCon)
    strTemp = ""
    strTemp2 = ""
    Page = 1
    For intfor = 0 To intCount
        strTemp = strTemp & aCon(intfor)
        strTemp2 = strTemp2 & RemoveHTML(aCon(intfor))
        'strTemp2 = strTemp2 & aCon(intFor)
        If Len(strTemp2) >= pSize Then
            If pagenum = Page Then
                get_page_text = strTemp
                Exit For
            End If
            Page = Page + 1
            strTemp = ""
            strTemp2 = ""
        End If
    Next
    If strTemp2 <> "" And pagenum > Page - 1 Then get_page_text = strTemp
End Function

纯JS长文章分页代码

如果只有一页,则不显示分页 border=0> 大家来试验分页哦~~~~~[NextPage]我分~~~[NextPage]我再分[NextPage]分...
  • u014625500
  • u014625500
  • 2014年04月13日 21:02
  • 838

Html 分页自动控制、分页自动生成、分页数量可控制

示例图片: /** * 对页面进行分页 * @param obj 页码标签对象 * @param pageCount number 总页面数 * @param pageSize number 分...
  • eesc55
  • eesc55
  • 2016年08月13日 13:26
  • 5710

JS+CSS之单篇文章内容分页

JS+CSS之单篇文章内容分页
  • netuser1937
  • netuser1937
  • 2017年02月07日 16:27
  • 378

js 文章列表li 分页

li文章分页 第1集 第2集 第3集 第4集 第5集 第6集 第7集 第8集 第9集 第10集 ...
  • yongxiaokang1
  • yongxiaokang1
  • 2014年12月19日 10:28
  • 1483

django-pagination---七步教你实现Django网站列表自动分页

from:http://django-china.cn/topic/53/ 网站,特别是论坛,就如本社区一样,肯定会遇到某个页面要显示列表(比如本社区的首页,要显示主题列表),那肯定...
  • fighter_yy
  • fighter_yy
  • 2014年11月20日 09:41
  • 13830

jQuery实现长文章分页

首先,在开头定义Css样式 #content-box p{ display: none; } #page-box{ ...
  • lz610756247
  • lz610756247
  • 2015年12月25日 16:25
  • 2335

html长文章分页

New Document                                  *         {             font-size: 10.2pt;  ...
  • u014625500
  • u014625500
  • 2014年05月28日 12:22
  • 667

javascript实现分页效果

一般的页面我们实现分页效果都是用跳转的形式,但是有些需求需要我们在不跳转页面的同时完成分页效果,简单的一个实现例子:window.onload = function(){ page...
  • yilanyoumeng3
  • yilanyoumeng3
  • 2015年06月18日 16:24
  • 1820

根据<h*>标签JavaScript/jQuery自动生成文章目录(页面内导航)且平滑跳转

我的博客 aeroyoung.github.io   本文地址 aeroyoung.github.io/2015/09/01/Web 有的博文内容很长阅读很不方便,本文介绍利用jQuery自动生成页...
  • AeroYoung
  • AeroYoung
  • 2015年09月01日 13:48
  • 674

使用PHP将长文章分页

新学的同志们,今天给大家们说一个很好的分页方法,值需要简单的几行代码和一个封装好的类就可以轻松的完成长文章进行分页的方法,再也不用每次敲那繁琐的代码,我希望今天给的代码可以对大家能够有用。 好了,废...
  • haoyunyun888
  • haoyunyun888
  • 2016年09月29日 08:02
  • 663
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:超长文章自动分页(含HTML),用ASP和Javascript实现
举报原因:
原因补充:

(最多只允许输入30个字)