ueditor 长文章分页

本文介绍了一种利用JavaScript实现长文章自动分页的方法,重点介绍了如何使用正则表达式处理带有HTML标签的内容,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最基础的长文章分页虽然很简单,但一直没有去实践,最近没什么事情便捣鼓了一把

其实也没有说亲自去写每一行代码,网上搜索了一把,看中一哥们的一篇文章,便拿过来改吧改吧,因为是事后很久才写这个笔记,所以记不住那个文章的链接了,在此也正式的说声:抱歉,兄弟!


长文章分页常见的有两种方式,一种是通过js,另一种是结合后台程序,根据长度做截取,但因为html标签在截取的时候容易出现标签没有闭合的情况,而要解决这个问题就需要用正则去匹配,比较麻烦,个人比较喜欢第一种,方便实用 而且可控性、灵活性比较高,当然缺陷就是小编估计不干了,每篇文章都得手动的去插入分隔符;

长文章分页的关键点:分页符  比如ueditor的 _ueditor_page_break_tag_

两个js函数 split 和 test

 

下面上代码

  1. <span style="font-size:14px;"><script type="text/javascript">
  2. var pageCount = 1;//总页数
  3. var regExp = /_ueditor_page_break_tag_/;//根据某处字符来分页
  4. var saveContent;//用于保存分页数据
  5. var content, pageList;//保存全局ID
  6. $(document).ready(function(){
  7. UeInitialize("#content-box","#page");
  8. });
  9. UeInitialize = function (id,page) {
  10. var cTxt = $(id).html();
  11. content = $(id);
  12. pageList = $(page);
  13. if (cTxt != null && regExp.test(cTxt)) {
  14. saveContent = cTxt.split(regExp);
  15. pageCount = saveContent.length;
  16. }
  17. window.UePageContent(1);
  18. };
  19. UePageContent = function (pageIndex) {
  20. if (pageIndex >= 1 && pageIndex <= pageCount && saveContent != null && saveContent.length >= 0) {
  21. var pageHtml = pageList;
  22. if ((parseInt(pageIndex) - 1) <= saveContent.length) {
  23. content.html(saveContent[parseInt(pageIndex) - 1]);
  24. }
  25. pageHtml.html("");
  26. var innHtml = "页数:" + pageIndex + "/" + pageCount;
  27. innHtml += "<a target='_self' href='javascript:UePageContent(1)'>首页</a>";
  28. if (pageIndex > 1) {
  29. innHtml += "<a target='_self' href='javascript:UePageContent(" + (parseInt(pageIndex) - 1) + ")'>上一页</a>";
  30. }
  31. if (pageIndex < pageCount) {
  32. innHtml += "<a target='_self' href='javascript:UePageContent(" + (parseInt(pageIndex) + 1) + ")'>下一页</a>";
  33. }
  34. innHtml += "<a target='_self' href='javascript:UePageContent(" + pageCount + ")'>末页</a>";
  35. pageHtml.html(innHtml);
  36. }
  37. }
  38. </script></span>

内容和分页容器

  1. <span style="font-size:14px;"><div id="content-box">
  2. {$ainfo.content} //长文章内容
  3. </div>
  4. <div id="page"></div></span>

如此这般便可以实现一个简单的长文章分页了,当然分页条部分你可以根据自己的需求去修改 比如根据分页数去做一个循环,显示成1 2 3 4 这种形式的


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值