// 刷新|生成分页信息
function refreshPageInfo(data, pageIndex) {
var pageSize = data.pageCount
pagingInfo.html('')
var li = $('<li><a data="1">&laquo;</a></li>')
pagingInfo.append(li) // 总页数小于等于10页,全部显示
if (pageSize <= 10) {
for (var i = 1; i <= pageSize; i++) {
var li = $('<li><a data="' + i + '">' + i + '</a></li>')
addActive(li, i, pageIndex)
pagingInfo.append(li)
}
// 当前页是前10页
} else if (pageIndex < 10) {
for (var i = 1; i <= 10; i++) {
var li = $('<li><a data="' + i + '">' + i + '</a></li>')
addActive(li, i, pageIndex)
pagingInfo.append(li)
}
pagingInfo.append('<li><a>......</a></li>')
pagingInfo.append('<li><a data=' + pageSize + '>' + pageSize + '</a></li>')
// 当前页面是最后10页
} else if (pageSize - pageIndex < 10) {
if (pageSize - 10 > 1) {
pagingInfo.append('<li><a data="1">1</a></li>')
pagingInfo.append('<li><a>......</a></li>')
}
for (var i = pageSize - 10; i <= pageSize; i++) {
var li = $('<li><a data="' + i + '">' + i + '</a></li>')
addActive(li, i, pageIndex)
pagingInfo.append(li)
if (i == 1) {
pagingInfo.append('<li><a>......</a></li>')
}
}
} else {
// 当前页面基于所有页面中间位置
// 初始化页面基准坐标
if (tmpPageIndex == 0) {
tmpPageIndex = pageIndex
}
// 当页面索引达到最前或最后时,需要重新设置页面基准坐标
if (tmpPageIndex <= pageIndex - 5 || tmpPageIndex >= pageIndex + 5) {
tmpPageIndex = pageIndex
}
pagingInfo.append('<li><a data="1">1</a></li>')
pagingInfo.append('<li><a>......</a></li>') for (var i = tmpPageIndex - 5; i <= tmpPageIndex + 5; i++) {
var li = $('<li><a data="' + i + '">' + i + '</a></li>')
addActive(li, i, pageIndex)
pagingInfo.append(li)
} pagingInfo.append('<li><a>......</a></li>')
pagingInfo.append('<li><a data=' + pageSize + '>' + pageSize + '</a></li>')
} var li = $('<li><a data="' + data.pageCount + '">&raquo;</a></li>')
pagingInfo.append(li)
} // 添加分页按钮焦点
function addActive(li, i, pageIndex) {
if (i == pageIndex) {
li.addClass('active')
}
}

效果:

JS实现带省略号的长分页显示的更多相关文章

  1. Latex 算法过长 分页显示方法

    参考: Algorithm tag and page break Latex 算法过长 分页显示方法 1.引用algorithm包: 2.在\begin{document}前加上以下Latex代码: ...

  2. 电力项目七--js控制文字内容过长的显示和文本字数的显示

    当文本框中文字内容过长时,需要调整显示的样式 如上图所示的样式 对应的代码为: <div id="showInfomation" style="visibility ...

  3. Django中使用JS通过DataTable实现表格前端分页,每页显示页数,搜索等功能

    Django架构中自带了后端分页的技术,通过Paginator进行分页,前端点击按钮提交后台进行页面切换. 优缺点:后端分页对于数据量大的场景有其优势,但页面切换比较慢. 后端分页python3代码如 ...

  4. js实现长按显示全部内容

    js实现文字超出省略号显示时长按显示全部 元素内容超出省略号显示时长按该元素,生成toast弹窗(id:toolkitContainer),以显示全部内容 #toolkitContainer { ma ...

  5. scroll事件实现监控滚动条并分页显示示例(zepto.js)

    scroll事件实现监控滚动条并分页显示示例(zepto.js  ) 需求:在APP落地页上的底部位置显示此前其他用户的购买记录,要求此div盒子只显示3条半,但一页有10条,div内的滑动条滑到一页 ...

  6. Spring boot入门(三):SpringBoot集成结合AdminLTE(Freemarker),利用generate自动生成代码,利用DataTable和PageHelper进行分页显示

    关于SpringBoot和PageHelper,前篇博客已经介绍过Spring boot入门(二):Spring boot集成MySql,Mybatis和PageHelper插件,前篇博客大致讲述了S ...

  7. JavaWeb分页显示内容之分页查询的三种思路(数据库分页查询)

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6134851.html 在开发过程中,经常做的一件事,也是最基本的事,就是从数据库中查询数据,然后在客户端显示出 ...

  8. day81:luffy:课程分类页面&课程信息页面&指定分类显示课程信息&分页显示课程信息

    目录 1.构建课程前端初始页面 2.course后端的准备工作 3.后端实现课程分类列表接口 4.前端发送请求-获取课程分类信息 5.后端实现课程列表信息的接口 6.前端显示列表课程信息 7.按照指定 ...

  9. jQuery+bootstrap实现有省略号的数据分页

    1.前言 在前端通过ajax请求数据后,可以通过bootstrap实现分页.由于bootstrap只提供分页的按钮的样式.数据分页我们需要实现页码跳转,上一页下一页,数据过多显示省略号,点击省略号能快 ...

随机推荐

  1. phpinfo中敏感信息记录

    比赛中或者渗透中如果遇到phpinfo,从里面发现的一些线索能够对后续的渗透和解题帮助很大,这里记录总结一下目前网上比较常用的的. 下图来源于:https://seaii-blog.com/index ...

  2. Configure vyatta

    Username: vyatta Password: vyatta 配置网卡: 编辑: configure 内部网络IP地址配置:192.168.0.1 set interfaces ethernet ...

  3. sentinel备忘

    git https://github.com/alibaba/Sentinel   https://github.com/dubbo/dubbo-sentinel-supportdubbo http: ...

  4. Django中三种方式写form表单

    除了在html中自己手写form表单外,django还可以通过 继承django.forms.Form 或django.forms.ModelForm两个类来自动生成form表单,下面依次利用三种方式 ...

  5. 数据结构之双端队列(Deque)

    1,双端队列定义 双端队列:其两端都可以入列和出列的数据结构,如下图所示,队列后面(rear)可以加入和移出数据,队列前面(front)可以加入和移出数据 双端队列操作: deque=Deque() ...

  6. [转]Nginx配置信息详解

    序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富,可作为HTTP服务器,也 ...

  7. python git 基础操作

    模块安装 pip install gitpython 基本用法 1. 初始化 from git import Repo Repo.init('/data/test2') # 创建一个git文件夹 # ...

  8. parted对大容量磁盘进行分区

    Linux系统中MBR与GPT的区别 主引导记录(Master Boot Record , MBR)是指一个存储设备的开头 512 字节.它包含操作系统的引导器和存储设备的分区表. 全局唯一标识分区表 ...

  9. document.onselectstart=function(){return false;} 引起的拖动问题

    在网页中拖动时,会引起某些文字或一些内容被选中,导致网页中蓝蓝的一片,视觉效果很差,所以我加了个1.document.onselectstart=function(){return false;}或者 ...

  10. Jmeter配置联机负载生成密钥失败的问题解决

    在配置负载联机时, 控制机上需要生成密钥供负载机使用. 在bin目录下双击create-rmi-keystore.bat时, 弹出错误提示: 'XXXX'不是内部或外部命令, 这种典型的错误一看就环境 ...