jQuery静态分页功能
分页功能在做项目的过程中是常常用到的,下面是我常用的一款分页效果:
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'>共 "+totalpage+" 页 | 第 "+cpage+" 页</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静态分页功能的更多相关文章
- jquery实现分页功能
RT,不是很难,但是感觉代码一点都不简洁,就是多加点判断,直接上代码了. HTML部分: <div class = "container-fluid"> <div ...
- 【jQuery 分页】jQuery分页功能的实现
自写的jQuery实现分页功能的分页组件: 功能效果如下: 分页组件就是上图中的三部分, 分别放在表格上部 和下部 . 其中, 1>>>页面的代码如下: product.jsp 其 ...
- jPList – 实现灵活排序和分页功能的 jQuery 插件
jPList 是一个灵活的 jQuery 插件,可以用于任何 HTML 结构的排序,分页和筛选.它支持的数据源包括:PHP + MySQL,ASP.NET + SQL Server,PHP + SQL ...
- jQuery实现的简单分页功能的详细解析
分页功能在项目开发中不可或缺,老司机操作起来就和呼吸一样简单,新手恐怕就会吃力一些. 今天我回顾了一下具体的操作步骤,决定详细的分析一下每一步的实现目的及原理. 我们会创建一个简单的json文件来模拟 ...
- Jquery、Ajax实现新闻列表页分页功能
前端页面官网的开发,离不开新闻列表,新闻列表一般都会有分页的功能,下面是我自己总结加查找网上资料写的一个分页的功能,记录一下. 首先,官网的开发建立在前后端分离的基础上: 再有,后端小伙伴们提供列表页 ...
- jq分页插件,支持动态,静态分页的插件,简单易用。
工作中经常要用到分页功能.为了方便封装了一个比较通用的分页插件开源出来了,简单易用. 官网:https://cwlch.github.io/Ch_Paging 下载地址:https://github. ...
- SpringMVC -jquery实现分页
效果图: 关键类的代码: package:utils: SpringUtil.java 通过jdbcTemplate连接oracle数据库 package com.utils; import org. ...
- aspnetpager+repeater+oracle实现分页功能
一.设计原理阐述 数据查询分页,这个功能相信大家都很熟悉,通过数据库或其它数据源进行查询操作后,将获得的数据显示到界面上,但是由于数据量太大,不能一次性完全的显示出来,就有了数据分页的需求.这个需求在 ...
- 基于SSM框架的简易的分页功能——包含maven项目的搭建
新人第一次发帖,有什么不对的地方请多多指教~~ 分页这个功能经常会被使用到,我之前学习的时候找了很多资源,可都看不懂(笨死算了),最后还是在朋友帮助下做出了这个分页.我现在把我所能想到的知识 做了一个 ...
随机推荐
- css中有些属性的前面会加上“*”或“_”,请问分别表示什么意思?
给不同的浏览器识别 例如: color{ background-color: #CC00FF; /*所有浏览器都会显示为紫色*/ background-color: #FF0000\9; /*IE6. ...
- Python 文件访问模式
f = open('xxx文件', '访问模式') r 以只读方式打开文件(read).文件的指针将会放在文件的开头.默认模式. w 打开一个文件只用于写入(write).如果该文件已存在则 ...
- C# 委托知识总结【转】
1.什么是委托,为什么要使用委托 我正在埋头苦写程序,突然想喝水,但是又不想自己去掉杯水而打断自己的思路,于是我就想让女朋友去给我倒水.她去给我倒水,首先我得让她知道我想让她干什么,通知她之后我可以继 ...
- Spring Cloud 升级最新 Finchley 版本,踩坑指南!
https://blog.csdn.net/youanyyou/article/details/81530240 Spring Cloud 升级最新 Finchley 版本,踩了所有的坑! 2018年 ...
- 基于centos7实现的nfs
NFS NFS(Network FileSystem,网络文件系统),最早由Sun公司所发展出来的,主要是通过网络让不同的主机.不同的操作系统,可以彼此分享个别档案,因此我们也可以简单把NFS看成是一 ...
- VM12虚拟机安装os x 10.11系统以及注意事项
一.安装步骤 原文链接:https://blog.csdn.net/soachenshui/article/details/49251513 https://blog.csdn.net/soachen ...
- JQuery制作网页—— 第三章 JavaScript操作DOM对象
1. DOM:Document Object Model(文档对象模型): DOM操作: ●DOM是Document Object Model的缩 ...
- Android和IOS网页不一致汇总
1.input type=text 内容输入框的不一致,ios会默认给输入框添加自己的样式,导致在横向的输入框长度精准控制的时候,ios的输入框一般都比android上要长一点,还有内部阴影 解决此问 ...
- Python全栈day 05
Python全栈day 05 一.数据类型补充 1. int py2和py3的2种区别 py2有int和long,int的取值范围为-2^31~2^31-1,超出范围自动转为long,长整型. py2 ...
- PLY手册翻译
https://www.kancloud.cn/kancloud/ply/42143 http://wiki.jikexueyuan.com/project/python-lex-yacc/ply-0 ...