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 相关文章推荐
Jquery.Form 异步提交表单的简单实例
Mar 03 Javascript
按钮接受回车事件的三种实现方法
Jun 06 Javascript
jQuery检测滚动条是否到达底部
Dec 15 Javascript
js代码实现点击按钮出现60秒倒计时
Jan 28 Javascript
JS实现“隐藏与显示”功能(多种方法)
Nov 24 Javascript
node.js基于mongodb的搜索分页示例
Jan 22 Javascript
element-ui 中使用upload多文件上传只请求一次接口
Jul 19 Javascript
JS实现旋转木马轮播图
Jan 01 Javascript
vue.js自定义组件实现v-model双向数据绑定的示例代码
Jan 08 Javascript
阿望教你用vue写扫雷小游戏
Jan 20 Javascript
vant 时间选择器--开始时间和结束时间实例
Nov 04 Javascript
工作中常用js功能汇总
Nov 07 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+Ajax实现上传文件进度条动态显示进度功能
2018/06/04 PHP
PHP设计模式之抽象工厂模式实例分析
2019/03/25 PHP
php字符串函数 str类常见用法示例
2020/05/15 PHP
通用于ie和firefox的函数 GetCurrentStyle (obj, prop)
2006/12/27 Javascript
javascript 特殊字符串
2009/02/25 Javascript
利用js获取服务器时间的两个简单方法
2010/01/08 Javascript
jquery对table中各数据的增加、保存、删除操作示例
2014/05/14 Javascript
jquery及js实现动态加载js文件的方法
2016/01/21 Javascript
js+css实现回到顶部按钮(back to top)
2016/03/02 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
JS中substring与substr的用法
2016/11/16 Javascript
JavaScript数组去重的6个方法
2017/01/21 Javascript
Web纯前端“旭日图”实现元素周期表
2017/03/10 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
vue如何实现自定义底部菜单栏
2019/07/01 Javascript
js实现动态时钟
2020/03/12 Javascript
解决Vue项目中tff报错的问题
2020/10/21 Javascript
[07:09]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant 选手采访
2021/03/11 DOTA
Python中实现远程调用(RPC、RMI)简单例子
2014/04/28 Python
Python多线程编程(一):threading模块综述
2015/04/05 Python
python使用装饰器和线程限制函数执行时间的方法
2015/04/18 Python
Python和Perl绘制中国北京跑步地图的方法
2016/03/03 Python
python3实现ftp服务功能(客户端)
2017/03/24 Python
用Python实现KNN分类算法
2017/12/22 Python
python 计算积分图和haar特征的实例代码
2019/11/20 Python
scrapy实践之翻页爬取的实现
2021/01/05 Python
CSS3哪些新特性值得称赞
2016/03/02 HTML / CSS
MyHeritage美国:家族史研究和DNA测试的领先服务
2019/05/27 全球购物
Molton Brown美国官网:奢华美容、香水、沐浴和身体护理
2020/09/02 全球购物
全球性的众包图形设计市场:DesignCrowd
2021/02/02 全球购物
经典婚礼主持词
2014/03/13 职场文书
《莫泊桑拜师》教学反思
2014/04/23 职场文书
班级标语大全
2014/06/21 职场文书
普通党员个人剖析材料
2014/10/08 职场文书
通讯稿格式及范文
2015/07/22 职场文书
利用Python第三方库实现预测NBA比赛结果
2021/06/21 Python