分页功能在做项目的过程中是常常用到的,下面是我常用的一款分页效果:

1、分页的CSS样式(page.css)

 #setpage {
margin: 15px auto;
text-align: center;
}
#setpage a:link,#setpage a:visited,#setpage a:hover,#setpage .current,#setpage #info{
border:1px solid #DDD;
background:#0d6cbf;
display:inline-block;
margin:1px;
text-decoration:none;
text-align:center;
color:#fff;
padding: 5px 10px;
font-size: 16px;
border-radius: 5px;
}
#setpage a:hover{
border:1px solid #0d6cbf;
background: #0d6cbf;
}
#setpage .current{
border:1px solid #0d6cbf;
background: #fff;
margin:1px;
color: #000;
text-decoration: underline;
}
#setpage #info{
width:auto;
}

2、分页的js代码(page.js)

 var totalpage,pagesize,cpage,count,curcount,outstr;
//初始化
cpage = 1; //当前页(设置为全局变量)
totalpage = 56; //总页数
pagesize = 10; //每页显示的数据数量
outstr = ""; //显示分页效果 function gotopage(target)
{
cpage = target; //把页面计数定位到第几页 //这里写页面跳转时要调用的方法
var state = $("#state").find("option:selected").val();
getData(state,cpage ); //setpage();
//reloadpage(target); //调用显示页面函数显示第几页,这个功能是用在页面内容用ajax载入的情况
} function setpage()
{
if(totalpage<=10){ //总页数小于十页
for (count=1;count<=totalpage;count++)
{ if(count!=cpage)
{
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>";
}else{
outstr = outstr + "<span class='current' >"+count+"</span>";
}
}
}
if(totalpage>10){ //总页数大于十页
if(parseInt((cpage-1)/10) == 0)
{
for (count=1;count<=10;count++)
{ if(count!=cpage)
{
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>";
}else{
outstr = outstr + "<span class='current'>"+count+"</span>";
}
}
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'> 下一组 </a>";
}
else if(parseInt((cpage-1)/10) == parseInt(totalpage/10))
{
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+(parseInt((cpage-1)/10)*10)+")'>上一组</a>";
for (count=parseInt(totalpage/10)*10+1;count<=totalpage;count++)
{ if(count!=cpage)
{
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>";
}else{
outstr = outstr + "<span class='current'>"+count+"</span>";
}
}
}
else
{
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+(parseInt((cpage-1)/10)*10)+")'>上一组</a>";
for (count=parseInt((cpage-1)/10)*10+1;count<=parseInt((cpage-1)/10)*10+10;count++)
{
if(count!=cpage)
{
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>";
}else{
outstr = outstr + "<span class='current'>"+count+"</span>";
}
}
outstr = outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'> 下一组 </a>";
}
}
document.getElementById("setpage").innerHTML = "<div id='setpage'><span id='info'>共&nbsp;"+totalpage+"&nbsp;页&nbsp;|&nbsp;第&nbsp;"+cpage+"&nbsp;页</span>" + outstr + "</div>";
outstr = "";
}

3、完整的html源码(page.html)

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>js静态分页</title>
<script type="text/javascript" src="http://iyitong.qiniudn.com/jquery-1.11.1.min.js"></script>
<!-- 引入分页js -->
<script src="http://7tszs6.com1.z0.glb.clouddn.com/page.js"></script> <style>
#setpage { margin: 15px auto; text-align: center; }
#setpage a:link,#setpage a:visited,#setpage a:hover,#setpage .current,#setpage #info{
border:1px solid #DDD;
background:#0d6cbf;
display:inline-block;
margin:1px;
text-decoration:none;
text-align:center;
color:#fff;
padding: 5px 10px;
font-size: 16px;
border-radius: 5px;
}
#setpage a:hover { border:1px solid #0d6cbf; background: #0d6cbf; }
#setpage .current {
border:1px solid #0d6cbf;
background: #fff;
margin:1px; color: #000;
text-decoration: underline;
}
#setpage #info { width:auto; }
</style> <script>
$(function(){
//静态页面时直接调用setpage()方法即可
setpage();
// 如果需要通过ajax动态加载json数据,通过以下方式调用
// pageIndex,分页参数,初始值为1
// function getData(pageIndex){
// var url = ""; //请求数据的接口
// $.getJSON(url,{
// // 这里写需要传递的参数
// pageIndex:pageIndex
// },function(result){
// // 在这里调用分页函数
// // size:表示返回的数据总数量
// var size = result.data.size;
// var pagesize = 50;//每页显示数据数量
// var totalpage=Math.floor((size-1)/pagesize)+1;//总页数
// setpage();//调用分页
// });
// }
});
</script>
</head>
<body>
<!-- 这里是显示分页的元素 -->
<div id="setpage"></div> </body>
</html>

4、最终的效果图:

本地预览

大家有更好的方法,请多多分享交流!

长路漫漫,只因学无止境...

转发请注明文章出处:http://www.cnblogs.com/iyitong/p/4220824.html 谢谢

jQuery静态分页功能的更多相关文章

  1. jquery实现分页功能

    RT,不是很难,但是感觉代码一点都不简洁,就是多加点判断,直接上代码了. HTML部分: <div class = "container-fluid"> <div ...

  2. 【jQuery 分页】jQuery分页功能的实现

    自写的jQuery实现分页功能的分页组件: 功能效果如下: 分页组件就是上图中的三部分, 分别放在表格上部  和下部 . 其中, 1>>>页面的代码如下: product.jsp 其 ...

  3. jPList – 实现灵活排序和分页功能的 jQuery 插件

    jPList 是一个灵活的 jQuery 插件,可以用于任何 HTML 结构的排序,分页和筛选.它支持的数据源包括:PHP + MySQL,ASP.NET + SQL Server,PHP + SQL ...

  4. jQuery实现的简单分页功能的详细解析

    分页功能在项目开发中不可或缺,老司机操作起来就和呼吸一样简单,新手恐怕就会吃力一些. 今天我回顾了一下具体的操作步骤,决定详细的分析一下每一步的实现目的及原理. 我们会创建一个简单的json文件来模拟 ...

  5. Jquery、Ajax实现新闻列表页分页功能

    前端页面官网的开发,离不开新闻列表,新闻列表一般都会有分页的功能,下面是我自己总结加查找网上资料写的一个分页的功能,记录一下. 首先,官网的开发建立在前后端分离的基础上: 再有,后端小伙伴们提供列表页 ...

  6. jq分页插件,支持动态,静态分页的插件,简单易用。

    工作中经常要用到分页功能.为了方便封装了一个比较通用的分页插件开源出来了,简单易用. 官网:https://cwlch.github.io/Ch_Paging 下载地址:https://github. ...

  7. SpringMVC -jquery实现分页

    效果图: 关键类的代码: package:utils: SpringUtil.java 通过jdbcTemplate连接oracle数据库 package com.utils; import org. ...

  8. aspnetpager+repeater+oracle实现分页功能

    一.设计原理阐述 数据查询分页,这个功能相信大家都很熟悉,通过数据库或其它数据源进行查询操作后,将获得的数据显示到界面上,但是由于数据量太大,不能一次性完全的显示出来,就有了数据分页的需求.这个需求在 ...

  9. 基于SSM框架的简易的分页功能——包含maven项目的搭建

    新人第一次发帖,有什么不对的地方请多多指教~~ 分页这个功能经常会被使用到,我之前学习的时候找了很多资源,可都看不懂(笨死算了),最后还是在朋友帮助下做出了这个分页.我现在把我所能想到的知识 做了一个 ...

随机推荐

  1. css中有些属性的前面会加上“*”或“_”,请问分别表示什么意思?

    给不同的浏览器识别 例如: color{ background-color: #CC00FF; /*所有浏览器都会显示为紫色*/ background-color: #FF0000\9; /*IE6. ...

  2. Python 文件访问模式

    f = open('xxx文件', '访问模式') r    以只读方式打开文件(read).文件的指针将会放在文件的开头.默认模式. w   打开一个文件只用于写入(write).如果该文件已存在则 ...

  3. C# 委托知识总结【转】

    1.什么是委托,为什么要使用委托 我正在埋头苦写程序,突然想喝水,但是又不想自己去掉杯水而打断自己的思路,于是我就想让女朋友去给我倒水.她去给我倒水,首先我得让她知道我想让她干什么,通知她之后我可以继 ...

  4. Spring Cloud 升级最新 Finchley 版本,踩坑指南!

    https://blog.csdn.net/youanyyou/article/details/81530240 Spring Cloud 升级最新 Finchley 版本,踩了所有的坑! 2018年 ...

  5. 基于centos7实现的nfs

    NFS NFS(Network FileSystem,网络文件系统),最早由Sun公司所发展出来的,主要是通过网络让不同的主机.不同的操作系统,可以彼此分享个别档案,因此我们也可以简单把NFS看成是一 ...

  6. VM12虚拟机安装os x 10.11系统以及注意事项

    一.安装步骤 原文链接:https://blog.csdn.net/soachenshui/article/details/49251513 https://blog.csdn.net/soachen ...

  7. JQuery制作网页—— 第三章 JavaScript操作DOM对象

    1. DOM:Document Object Model(文档对象模型):          DOM操作:                   ●DOM是Document Object Model的缩 ...

  8. Android和IOS网页不一致汇总

    1.input type=text 内容输入框的不一致,ios会默认给输入框添加自己的样式,导致在横向的输入框长度精准控制的时候,ios的输入框一般都比android上要长一点,还有内部阴影 解决此问 ...

  9. Python全栈day 05

    Python全栈day 05 一.数据类型补充 1. int py2和py3的2种区别 py2有int和long,int的取值范围为-2^31~2^31-1,超出范围自动转为long,长整型. py2 ...

  10. PLY手册翻译

    https://www.kancloud.cn/kancloud/ply/42143 http://wiki.jikexueyuan.com/project/python-lex-yacc/ply-0 ...