// 刷新|生成分页信息
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. Docker小记

    1.Docker的安装 这里给一个比较通用的教程 Ubuntu 14.04 16.04 (使用apt-get进行安装) # step : 安装必要的一些系统工具 sudo apt-get update ...

  2. OUC_TeamTraining_#1 720

    D - The Mirror of Galadriel Time Limit:2000MS     Memory Limit:0KB     64bit IO Format:%lld & %l ...

  3. [Tex学习笔记]章节用罗马字母编号

    微信扫描如上二维码关注跟锦数学微信公众账号. 详情请见那里.

  4. Nginx优化之服务性能优化

    优化Nginx服务的worker进程个数 修改nginx主配置文件 worker_processes 1; #指定了Nginx要开启的进程数,结尾数字就是进程个数 Nginx有Master进程和wor ...

  5. ERROR 1292(22007)

    ERROR 1292(22007) Table of Contents 1. 1292 1.1. 22007 1 1292   1.1 22007 错误信息 ERROR 1292 (22007): T ...

  6. MySql workbeach 更改侧边栏大小

    1.定位到workbench的样式目录下 cd /usr/share/mysql-workbench/ 2.更改其样式文件 GtkStatusbar GtkLabel { font-size: 12p ...

  7. Linux命令集锦:chmod命令

    chmod命令是用来变更文件或目录的权限. 权限范围的表示法如下: u:User,即文件或目录的拥有者: g:Group,即文件或目录的所属群组: o:Other,除了文件或目录拥有者或所属群组之外, ...

  8. 树莓派-Ubuntu Mate开启ssh服务

    1. 运行 apt search openssh-server 查看是否安装ssh服务. 2. 如已安装,运行 sudo dpkg-reconfigure openssh-server 重新配置shh ...

  9. pod installation failed with react native 0.44

    今天在集成react-native-sqlite-storage组件CocoaPods的时候遇到以下错误,这里记录一下错误解决方法: 报错如下: 以为是我Cocoapods的版本问题,于是更新版本: ...

  10. Mybatis Guide

    每个基于MyBatis的应用都是以一个SqlSessionFactory的实例为中心的.SqlSessionFactory的实例可以通过SqlSessionFactoryBuilder获得.而SqlS ...