JavaScript仿静态分页实现方法


Posted in Javascript onAugust 04, 2015

本文实例讲述了JavaScript仿静态分页实现方法。分享给大家供大家参考。具体如下:

这里基于JavaScript模仿网页不刷新静态分页的功能,实际用的时候估计要做些改动,因为目前需要分页的内容是作为一个字符串变量存在JS里,使用时这里的数据要变为数据库中读取的数据,不知道它的实用性有多高,需要的朋友慢慢调整一下。

运行效果如下图所示:

JavaScript仿静态分页实现方法

具体代码如下:

<HTML>
<HEAD>
<TITLE> 静态分页</TITLE>
<style>
* {
font-size:10.2pt;
font-family:tahoma;
line-height:150%;
}
.divContent
{
border:1px solid red;
background-color:#FFD2D3;
width:500px;
word-break:break-all;
margin:10px 0px 10px;
padding:10px;
}
</style>
</HEAD>
<BODY>
header
<div id="divPagenation"></div>
<div id="divContent"></div>
footer
<SCRIPT LANGUAGE="JavaScript">
<!--
s="<p>jquery SimpleModal Ajax弹出对话框插件,拥有简洁风格的网页弹出层插件,风格设计比较简约大方,可弹出图片、弹出含有HTML代码的div对话框等,类似的效果已有很多,请根据自己的需要采用吧。。jquery SimpleModal Ajax弹出对话框插件,拥有简洁风格的网页弹出层插件,风格设计比较简约大方,可弹出图片、弹出含有HTML代码的div对话框等,类似的效果已有很多,请根据自己的需要采用吧。</p>";
function DHTMLpagenation(content) { with (this)
{
this.content=content;
this.contentLength=content.length;
this.pageSizeCount;
this.perpageLength=100;
this.currentPage=1;
this.regularExp=/\d+/;
this.divDisplayContent;
this.contentStyle=null;
this.strDisplayContent="";
this.divDisplayPagenation;
this.strDisplayPagenation="";
arguments.length==2?perpageLength=arguments[1]:'';
try {
divExecuteTime=document.createElement("DIV");
document.body.appendChild(divExecuteTime);
}
catch(e)
{
}
if(document.getElementById("divContent"))
{
divDisplayContent=document.getElementById("divContent");
}
else
{
try
{
divDisplayContent=document.createElement("DIV");
divDisplayContent.id="divContent";
document.body.appendChild(divDisplayContent);
}
catch(e)
{
return false;
}
}
if(document.getElementById("divPagenation"))
{
divDisplayPagenation=document.getElementById("divPagenation");
}
else
{
try
{
divDisplayPagenation=document.createElement("DIV");
divDisplayPagenation.id="divPagenation";
document.body.appendChild(divDisplayPagenation);
}
catch(e)
{
return false;
}
}
DHTMLpagenation.initialize();
return this;
}};
DHTMLpagenation.initialize=function() { with (this)
{
divDisplayContent.className=contentStyle!=null?contentStyle:"divContent";
if(contentLength<=perpageLength)
{
strDisplayContent=content;
divDisplayContent.innerHTML=strDisplayContent;
return null;
}
pageSizeCount=Math.ceil((contentLength/perpageLength));
DHTMLpagenation.goto(currentPage);
DHTMLpagenation.displayContent();
}};
DHTMLpagenation.displayPage=function() { with (this)
{
strDisplayPagenation="分页:";
if(currentPage&¤tPage!=1)
strDisplayPagenation+='<a href="javascript:void(0)" onclick="DHTMLpagenation.previous()">上一页</a>  ';
else
strDisplayPagenation+="上一页  ";
for(var i=1;i<=pageSizeCount;i++)
{
if(i!=currentPage)
strDisplayPagenation+='<a href="javascript:void(0)" onclick="DHTMLpagenation.goto('+i+');">'+i+'</a>  ';
else
strDisplayPagenation+=i+"  ";
}
if(currentPage&¤tPage!=pageSizeCount)
strDisplayPagenation+='<a href="javascript:void(0)" onclick="DHTMLpagenation.next()">下一页</a>  ';
else
strDisplayPagenation+="下一页  ";
strDisplayPagenation+="共 " + pageSizeCount + " 页,每页" + perpageLength + " 字符,调整字符数:<input type='text' value='"+perpageLength+"' id='ctlPerpageLength'><input type='button' value='确定' onclick='DHTMLpagenation.change(document.getElementById(\"ctlPerpageLength\").value);'>";
divDisplayPagenation.innerHTML=strDisplayPagenation;
}};
DHTMLpagenation.previous=function() { with(this)
{
DHTMLpagenation.goto(currentPage-1);
}};
DHTMLpagenation.next=function() { with(this)
{
DHTMLpagenation.goto(currentPage+1);
}};
DHTMLpagenation.goto=function(iCurrentPage) { with (this)
{
startime=new Date();
if(regularExp.test(iCurrentPage))
{
currentPage=iCurrentPage;
strDisplayContent=content.substr((currentPage-1)*perpageLength,perpageLength);
}
else
{
alert("page parameter error!");
}
DHTMLpagenation.displayPage();
DHTMLpagenation.displayContent();
}};
DHTMLpagenation.displayContent=function() { with (this)
{
divDisplayContent.innerHTML=strDisplayContent;
}};
DHTMLpagenation.change=function(iPerpageLength) { with(this)
{
if(regularExp.test(iPerpageLength))
{
DHTMLpagenation.perpageLength=iPerpageLength;
DHTMLpagenation.currentPage=1;
DHTMLpagenation.initialize();
}
else
{
alert("请输入数字");
}
}};
DHTMLpagenation(s,100);
//-->
</SCRIPT>
</BODY>
</HTML>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
10个基于Jquery的幻灯片插件教程
Oct 29 Javascript
学习js在线html(富文本,所见即所得)编辑器
Dec 18 Javascript
深入浅析Bootstrap列表组组件
May 03 Javascript
js实现HashTable(哈希表)的实例分析
Nov 21 Javascript
你不知道的 javascript【推荐】
Jan 08 Javascript
canvas压缩图片转换成base64格式输出文件流
Mar 09 Javascript
通过构造函数实例化对象的方法
Jun 28 Javascript
JavaScript框架Angular和React深度对比
Nov 20 Javascript
基于node.js实现微信支付退款功能
Dec 19 Javascript
微信小程序冒泡事件及其阻止方法实例分析
Dec 06 Javascript
利用angular自动编译andriod APK的绕坑经历分享
Mar 08 Javascript
关于引入vue.js 文件的知识点总结
Jan 28 Javascript
JavaScript实现选择框按比例拖拉缩放的方法
Aug 04 #Javascript
Javascript实现可旋转的圆圈实例代码
Aug 04 #Javascript
JavaScript数组各种常见用法实例分析
Aug 04 #Javascript
基于Jquery实现表单验证
Jul 20 #Javascript
javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
Aug 04 #Javascript
jq实现左侧显示图片右侧文字滑动切换效果
Aug 04 #Javascript
javascript控制图片播放的实现代码
Jul 29 #Javascript
You might like
解析php中两种缩放图片的函数,为图片添加水印
2013/06/14 PHP
php对二维数组进行相关操作(排序、转换、去空白等)
2015/11/04 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
js改变文章字体大小的实例代码
2013/11/27 Javascript
jquery选择器排除某个DOM元素的方法(实例演示)
2014/04/25 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
Angular2下使用pdf插件的方法详解
2017/04/29 Javascript
layui导航栏实现代码
2017/05/19 Javascript
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
vue 过滤器filter实例详解
2018/03/14 Javascript
解决vue 绑定对象内点击事件失效问题
2018/09/05 Javascript
vue debug 二种方法
2018/09/16 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
深入了解query和params的使用区别
2019/06/24 Javascript
使用Angular material主题定义自己的组件库的配色体系
2019/09/04 Javascript
vue+element导航栏高亮显示的解决方式
2019/11/12 Javascript
100行python代码实现跳一跳辅助程序
2018/01/15 Python
使用python list 查找所有匹配元素的位置实例
2019/06/11 Python
python 内置函数汇总详解
2019/09/16 Python
基于python实现数组格式参数加密计算
2020/04/21 Python
如何在django中实现分页功能
2020/04/22 Python
css3 仿写阿里云水纹效果的示例代码
2018/02/10 HTML / CSS
迪斯尼商品官方网站:ShopDisney
2016/08/01 全球购物
印度网上购物首选目的地:Flipkart
2016/08/01 全球购物
Columbia美国官网:美国著名的户外服装品牌
2016/11/24 全球购物
Cole Haan官方网站:美国时尚潮流品牌
2017/12/06 全球购物
沙龙级头发造型工具:FOXYBAE
2018/07/01 全球购物
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang
Python 中的单分派泛函数你真的了解吗
2021/06/22 Python
openstack中的rpc远程调用的方法
2021/07/09 Python
windows安装 redis 6.2.6最新步骤详解
2022/04/26 Redis
Redis基本数据类型String常用操作命令
2022/06/01 Redis