// 刷新|生成分页信息
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. mysql zip方式安装

    下载zip文件解压到安装目录,此时是没有data文件夹和my.ini文件的. 1.首先自己新建my.ini,内容如下: [client] port=3306 default-character-set ...

  2. PHP-生产随机验证码图片

    // <span style="white-space:pre"> </span>//因为要把产生的验证码保存到session中,此处为session开始 ...

  3. kafka可视化工具安装及简单使用

    一.安装 双击kafkatool_64bit.exe安装kafka可视化工具,并且C:\Windows\System32\drivers\etc配置HOSTS,打开HOSTS并添加: HOSTS添加: ...

  4. Kbengine游戏引擎-【5】用Dockerfile打包镜像kbengine

    本文是以docker为例,以ubuntu 16.04做基础镜像 kengine 1.0.0 用supervisor来管理启动 先放下目录结构图: kb--里面放的是kbengine的编译后的引擎以及d ...

  5. JS中的map()方法

    map定义和方法 map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理的后值. map()方法按照原始数组元素顺序依次处理元素. 注意: map不会对空数组进行检测 map不会改变原始 ...

  6. IDEA类和方法注释模板设置(非常详细)

    一.首先我们来设置IDEA中类的模板:(IDEA中在创建类时会自动给添加注释) 1.File-->settings-->Editor-->File and Code Template ...

  7. jekins自动部署tomcat注意事项、连接tomcat报错

    jekins自动部署tomcat注意事项 千万不要用下面插件推送,报错很多, 要用脚本,一篇博客说的:“我们都是用的脚本,插件报错太多,也不完善” Deploy to container Plugin ...

  8. 【JVM学习笔记】系统类加载器

    可以通过“java.system.class.loader"属性指定系统类加载器 默认情况下,该属性值为空: public class Test { public static void m ...

  9. 搭建hadoop2.4.1

    前期准备: 1.系统基本形况: ip hostname role server loginName 192.168.1.101 h1 NameNode,ResourceManager centos7_ ...

  10. iscsi-分区类型

    iSCSI简介(Internet SCSI): iSCSI 小型计算机系统接口,IBM公司研发,用于在IP网络上运行SCSI协议:解决了 SCSI需要直连存储设备的局限性:可以不停机扩展存储容量,iS ...