`
oliverjonas
  • 浏览: 6306 次
  • 性别: Icon_minigender_1
  • 来自: 济南
最近访客 更多访客>>
社区版块
存档分类
最新评论

js-分页实现

阅读更多
用JS实现静态网页的动态分页



设计思路及实现细节解释:

一. 显示各页的内容

已知有一个文章标题链接数组(title),它将分配在各页中显示出来,不同的页码显示不同的内容。为此,各页的序号是解决内容显示的关键所在。静态网页支持URL地址尾部参数,其结构为:

http://localhost/test/jspage.htm?1

其中,“?1”就是上述URL地址的尾部参数,在JS中,可用JS方法window.location.search取得:

idx=window.location.search; //得到“?x”字串

再用substr方法处理idx,得到问号后面的整数即为所需的页面序号:

    mylen=idx.length-1; //截取数
     idx=idx.substr(1,mylen); //得到序号

有了页面序号,各页显示的内容可以从标题链接数组title变量中提取。

二. 写页码链接

根据已知的总条目(total)和每页需要显示的条目数(show)可以计算出所需要的总页数(page):

total%show==0 ? page=total/show : page=Math.ceil(total/show); //计算总页数

这里,运用了三元运算符,所以代码非常简洁。其意为:若总条目数(total)被每页显示条目数(show)整除,总页数等于总条目数除以每页显示数,否则用JS的ceil方法取得总页数。

然后可以编写一个打印链接页码函数再调用它即可。

【附一】JS分页脚本完整代码:

<script language="javascript">

var total=172; //总条目: 可变
var show=20; //每页显示条目数: 可变
total%show==0?page=total/show:page=Math.ceil(total/show); //计算总页数

//取得当前页序号 - idx
idx=window.location.search; //这里得到 ?0 字样
if(idx=="") idx="?0"; //初始可能没有URL的尾部参数
mylen=idx.length-1;
idx=idx.substr(1,mylen);

var title=new Array(); //测试用文章标题数组 title (赋值)
for(i=0;i<total;i++) {
     k=i+1;
     title[i]="文章标题 " + k + "<br>";
}

function echostr(pg) { //函数: 打印各页内容
     var mystr="";
     for(i=0;i<show;i++) {
         myidx=pg*show+i;
         if(title[myidx]) mystr+=title[myidx];  //只显示存在的内容
     }
     document.write(mystr);
}

//显示相关资料 - 测试用
document.write('总条目: ' + total + '┊每页显示数: ' + show + '┊需要页数: ' + page + '┊当前页码序号(idx): ' + idx + '<br><br>');

echostr(idx); //显示页面内容

function pg_link(all){ //函数: 打印页码链接
     linkstr="<br>第 ";
     for(i=0;i<all;i++) {
         j=i+1;
         i!=idx ? linkstr+="<a href='jspage.htm?" + i + "'>" + j + "</a> ":linkstr+=j + " ";
     }
     linkstr+="页";
     document.write(linkstr + "<br><br>");
}

pg_link(page); //显示页码链接

</script>


本文转自:http://www.cnblogs.com/sbxwylt/articles/1113166.html
分享到:
评论

相关推荐

    js-swiper-分页标签加进度条-自定义位置加进度条

    综上所述,结合Swiper的配置选项和CSS样式,我们可以轻松地在Swiper中添加分页标签和进度条,并自定义它们的位置和外观,从而实现更丰富的用户体验。在实际项目中,记得根据需求调整这些参数,以达到最佳的视觉效果...

    (源代码)第03讲:uni-pagination实现表格分页查询

    在本教程中,我们将深入探讨如何使用uni-app框架中的uni-pagination组件来实现表格数据的分页查询。uni-app是一款跨平台的开发工具,允许开发者使用Vue.js语法编写一次代码,部署到多端,如iOS、Android、H5、微信小...

    基于tp5的vue+element-ui 实现分页

    在本项目中,我们主要探讨如何使用`ThinkPHP5 (TP5)`框架,结合前端的`Vue.js`和`Element UI`组件库来实现数据的分页显示。`ThinkPHP5`是一个流行的PHP开发框架,它提供了丰富的MVC功能,方便开发者快速构建Web应用...

    javascript经典特效---分页的文本显示.rar

    下面将详细讨论JavaScript分页的基本原理、实现方法以及可能涉及到的相关技术。 分页是网页设计中常见的功能,特别是在处理大量数据时,如新闻列表、产品目录等。通过分页,用户可以逐页浏览内容,而不是一次性加载...

    jpager-分页demo

    【标题】"jpager-分页demo"是一个关于使用jpager库实现分页功能的示例项目。在Web开发中,分页是处理大量数据时不可或缺的元素,它能够帮助用户有条不紊地浏览信息,提高用户体验。jpager是一个专门为Java Web应用...

    js-table分页

    `js-table`可能是指一个专门处理JavaScript表格和分页的库,虽然没有提供具体的库名称,但我们可以探讨一下JavaScript中实现表格分页的一般方法和相关的Java知识点。 在前端开发中,JavaScript通常用于创建动态和...

    纯js分页-用js实现分页显示

    纯js分页,用js将内容以分页的形式展现出来,处理数据更简单

    json转js数组-分页-动态生成html-样式引入

    假设我们有`jsArray`,可以使用以下伪代码实现简单的分页: ```javascript function paginate(array, pageSize) { var totalPages = Math.ceil(array.length / pageSize); return function(pageNumber) { return ...

    JS-数据库page分页样式.rar

    "JS-数据库page分页样式.rar" 提到的正是关于JavaScript实现的数据库数据分页功能及相应的样式设计。下面我们将深入探讨这一主题。 首先,我们需要理解什么是数据分页。数据分页是将一个大的数据集分割成多个较小的...

    jQuery插件--分页插件

    4. `jquery.page.js`:这是分页插件的核心代码,实现了分页逻辑和交互功能。 接下来,我们将详细讲解jQuery分页插件的实现步骤: **1. 引入依赖** 在HTML文件中,我们需要引入jQuery库和分页插件的JavaScript文件...

    基于js分页实现(简单)

    基于JS的分页实现 &lt;!-- 引入CSS样式 --&gt; &lt;table id="data-table"&gt; &lt;!-- 数据表格内容 --&gt; &lt;div id="pagination"&gt;&lt;/div&gt; &lt;!-- 引入JavaScript文件 --&gt; &lt;script src="js/pagination.js"&gt; ``` 二、CSS ...

    利用js制作html table分页示例(js实现分页)

    描述和标签提到的“js实现分页”和“table分页”指的是用JavaScript编写代码来控制表格数据的分页显示。实现分页的步骤一般包括设置每页显示的数据条数、获取数据总条数、计算总页数、控制当前页数变量以及能够实现...

    21-分页-源代码.rar

    2. 后端代码,使用某种编程语言(可能是Java、Python、Node.js等)实现对数据库的调用,处理分页和条件查询的逻辑,并将结果转换为适合前端的数据格式。 3. 前端代码,展示如何接收后端返回的数据,并在用户界面上...

    js实现分页效果

    二、基本的JavaScript分页实现 1. 创建HTML结构:构建分页的HTML元素,通常包括页码列表、上一页/下一页按钮等。 ```html 上一页 &lt;span id="currentPage"&gt;1 下一页 &lt;ul id="pageNumbers"&gt;&lt;/ul&gt; ``` 2. ...

    ExtJS笔记---Grid实现后台分页

    这篇“ExtJS笔记——Grid实现后台分页”探讨了如何在ExtJS的Grid组件中实现高效的后台分页功能。 后台分页是一种常见的数据处理策略,特别是在大数据量的情况下,它将数据分批加载,避免一次性加载所有记录导致的...

    boostrap-table分页实现

    在这个“bootstrap-table分页实现”的主题中,我们主要探讨如何在 Boostrap Table 中集成分页功能,以提供更高效的数据浏览体验。 首先,我们需要了解 Bootstrap Table 的基本结构和配置。Bootstrap Table 需要 ...

    AjaxDemo - 分页.rar

    总结来说,"AjaxDemo - 分页.rar"示例涵盖了C# MVC架构的分页实现,结合了后端服务器处理、数据库查询优化和前端AJAX技术,提供了流畅的用户体验。学习这个示例可以帮助开发者了解如何在实际项目中集成分页功能,...

    laypage多功能JavaScript分页组件 v1.3-源码.zip

    《laypage多功能JavaScript分页组件 v1.3-源码》是专为前端开发者设计的一款高效、易用的分页插件。它以其强大的功能、灵活的配置选项和简洁的API,深受广大开发者喜爱。在深入理解并使用这款组件之前,我们需要先...

    JS实现分页效果代码.zip

    本资源“JS实现分页效果代码.zip”提供了一种用JavaScript实现分页功能的解决方案,特别适用于动态加载数据或者需要优化用户浏览体验的场合。以下是对这个压缩包中包含的两个文件及其相关知识点的详细解释。 1. **...

    jqueryPagination-分页模板

    `jqueryPagination` 是一个基于 jQuery 的分页插件,它提供了丰富的样式和功能,使得开发者能够轻松实现美观且实用的分页效果。本篇文章将详细探讨 `jqueryPagination` 的核心特点和使用方法。 首先,`...

Global site tag (gtag.js) - Google Analytics