用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
分享到:
相关推荐
综上所述,结合Swiper的配置选项和CSS样式,我们可以轻松地在Swiper中添加分页标签和进度条,并自定义它们的位置和外观,从而实现更丰富的用户体验。在实际项目中,记得根据需求调整这些参数,以达到最佳的视觉效果...
在本教程中,我们将深入探讨如何使用uni-app框架中的uni-pagination组件来实现表格数据的分页查询。uni-app是一款跨平台的开发工具,允许开发者使用Vue.js语法编写一次代码,部署到多端,如iOS、Android、H5、微信小...
在本项目中,我们主要探讨如何使用`ThinkPHP5 (TP5)`框架,结合前端的`Vue.js`和`Element UI`组件库来实现数据的分页显示。`ThinkPHP5`是一个流行的PHP开发框架,它提供了丰富的MVC功能,方便开发者快速构建Web应用...
下面将详细讨论JavaScript分页的基本原理、实现方法以及可能涉及到的相关技术。 分页是网页设计中常见的功能,特别是在处理大量数据时,如新闻列表、产品目录等。通过分页,用户可以逐页浏览内容,而不是一次性加载...
【标题】"jpager-分页demo"是一个关于使用jpager库实现分页功能的示例项目。在Web开发中,分页是处理大量数据时不可或缺的元素,它能够帮助用户有条不紊地浏览信息,提高用户体验。jpager是一个专门为Java Web应用...
`js-table`可能是指一个专门处理JavaScript表格和分页的库,虽然没有提供具体的库名称,但我们可以探讨一下JavaScript中实现表格分页的一般方法和相关的Java知识点。 在前端开发中,JavaScript通常用于创建动态和...
纯js分页,用js将内容以分页的形式展现出来,处理数据更简单
假设我们有`jsArray`,可以使用以下伪代码实现简单的分页: ```javascript function paginate(array, pageSize) { var totalPages = Math.ceil(array.length / pageSize); return function(pageNumber) { return ...
"JS-数据库page分页样式.rar" 提到的正是关于JavaScript实现的数据库数据分页功能及相应的样式设计。下面我们将深入探讨这一主题。 首先,我们需要理解什么是数据分页。数据分页是将一个大的数据集分割成多个较小的...
4. `jquery.page.js`:这是分页插件的核心代码,实现了分页逻辑和交互功能。 接下来,我们将详细讲解jQuery分页插件的实现步骤: **1. 引入依赖** 在HTML文件中,我们需要引入jQuery库和分页插件的JavaScript文件...
基于JS的分页实现 <!-- 引入CSS样式 --> <table id="data-table"> <!-- 数据表格内容 --> <div id="pagination"></div> <!-- 引入JavaScript文件 --> <script src="js/pagination.js"> ``` 二、CSS ...
描述和标签提到的“js实现分页”和“table分页”指的是用JavaScript编写代码来控制表格数据的分页显示。实现分页的步骤一般包括设置每页显示的数据条数、获取数据总条数、计算总页数、控制当前页数变量以及能够实现...
2. 后端代码,使用某种编程语言(可能是Java、Python、Node.js等)实现对数据库的调用,处理分页和条件查询的逻辑,并将结果转换为适合前端的数据格式。 3. 前端代码,展示如何接收后端返回的数据,并在用户界面上...
二、基本的JavaScript分页实现 1. 创建HTML结构:构建分页的HTML元素,通常包括页码列表、上一页/下一页按钮等。 ```html 上一页 <span id="currentPage">1 下一页 <ul id="pageNumbers"></ul> ``` 2. ...
这篇“ExtJS笔记——Grid实现后台分页”探讨了如何在ExtJS的Grid组件中实现高效的后台分页功能。 后台分页是一种常见的数据处理策略,特别是在大数据量的情况下,它将数据分批加载,避免一次性加载所有记录导致的...
在这个“bootstrap-table分页实现”的主题中,我们主要探讨如何在 Boostrap Table 中集成分页功能,以提供更高效的数据浏览体验。 首先,我们需要了解 Bootstrap Table 的基本结构和配置。Bootstrap Table 需要 ...
总结来说,"AjaxDemo - 分页.rar"示例涵盖了C# MVC架构的分页实现,结合了后端服务器处理、数据库查询优化和前端AJAX技术,提供了流畅的用户体验。学习这个示例可以帮助开发者了解如何在实际项目中集成分页功能,...
《laypage多功能JavaScript分页组件 v1.3-源码》是专为前端开发者设计的一款高效、易用的分页插件。它以其强大的功能、灵活的配置选项和简洁的API,深受广大开发者喜爱。在深入理解并使用这款组件之前,我们需要先...
本资源“JS实现分页效果代码.zip”提供了一种用JavaScript实现分页功能的解决方案,特别适用于动态加载数据或者需要优化用户浏览体验的场合。以下是对这个压缩包中包含的两个文件及其相关知识点的详细解释。 1. **...
`jqueryPagination` 是一个基于 jQuery 的分页插件,它提供了丰富的样式和功能,使得开发者能够轻松实现美观且实用的分页效果。本篇文章将详细探讨 `jqueryPagination` 的核心特点和使用方法。 首先,`...