java带省略号的分页_分页带省略号-中间三个点

本文介绍如何使用JavaScript实现一个分页功能,包括上一页、下一页、每页显示数量设置,并且在分页中加入省略号来表示中间的页码,简化页面显示。
摘要由CSDN通过智能技术生成

上一页

下一页

var pageSize = 10//总页数

var curNum = 2//每页显示数

pageMain(pageSize, curNum)

function pageMain(pageSize, curNum) {

$(function () {

$(".thispage").html(1);

tabPage({

pageMain: '.listContentitems', //  数据库

pageNav: '#pageNav', //  第几页

pagePrev: '.prev', //  上一页

pageNext: '.next', //  下一页

endPage: '#endPage', //  最后一页

curNum: curNum,

pageSize: pageSize,

/*每页显示的条数*/

activeClass: 'active',

/*选中的页数*/

ini: 0 /*初始化显示的页面*/

});

function tabPage(tabPage) { // 分页的方法

var pageMain = $(tabPage.pageMain);

/*获取内容列表*/

var pageNav = $(tabPage.pageNav);

/*获取分页*/

var pagePrev = $(tabPage.pagePrev);

/*上一页*/

var pageNext = $(tabPage.pageNext);

/*下一页*/

var endPage = $(tabPage.endPage);

var curNum = tabPage.curNum;

/*每页显示数*/

var len = tabPage.pageSize;

/*计算总页数*/

$(".totalpage").html(len)

console.log(len)

// console.log(pageMain.find(".item").length);

var pageList = '';

/*生成页码*/

var iNum = 0;

/*当前的索引值*/

var pageSize = len;

// 页码大于等于4的时候,添加第一个页码元素

if ((iNum + 1) != 1 && (iNum + 1) >= 4 && pageSize != 4) {

pageList += '' + 1 + +'';

}

/* 当前页码>4, 并且<=总页码,总页码>5,添加“···”*/

if ((iNum + 1) - 2 > 2 && (iNum + 1) <= pageSize && pageSize > 5) {

pageList += '...';

}

/* 当前页码的前两页 */

var start = iNum - 2;

/* 当前页码的后两页 */

var end = (iNum + 1) + 2;

if ((start > 1 && (iNum + 1) 

end++;

}

if ((iNum + 1) > pageSize - 4 && (iNum + 1) >= pageSize) {

start--;

}

for (; start <= end; start++) {

if (start <= pageSize && start >= 1) {

pageList += '' + start + '';

}

}

if ((iNum + 1) + 2 = 1 && pageSize > 5) {

console.log(1111)

pageList += '...';

}

if ((iNum + 1) != pageSize && (iNum + 1) 

pageList += '' + pageSize + '';

}

$("#pageNav").html(pageList);

/*头一页加高亮显示*/

$("#pageNav").find("a:first").addClass(tabPage.activeClass);

$(".listContentitems").find(".item").hide();

/************首页的显示*********/

for (var i = 0; i 

$(".listContentitems").find(".item").eq(i).show()

}

}

})

}

var val = ''

$(".el-pagination").on("click", "ul a", function () {

let index = $(".el-pagination ul a").index(this);

console.log(index)

val = $(".el-pagination ul a").eq(index).text()

val = parseInt(val)

pageFn(val, pageSize)

$(".el-pagination ul a").removeClass("active");

$(".el-pagination ul a").each(function () {

if ($(this).text() == val) {

$(this).addClass("active");

}

})

$(".thispage").html(val);

$(".tableMiddle").find(".tableItem").hide();

for (var i = ($(this).html() - 1) * curNum; i 

$(".tableMiddle").find(".tableItem").eq(i).show()

}

})

/*上一页*/

$(".prev").on("click", function () {

console.log('上一页')

$(".tableMiddle").find(".tableItem").hide();

if (val == '') {

val = 1

}

if (val == 1) {

alert('当前是第一页');

$(".thispage").html(1);

for (var i = 0; i 

$(".tableMiddle").find(".tableItem").eq(i).show()

}

return false;

} else {

pageFn(val, pageSize)

$(".thispage").html(val - 1);

$("#pageNav").find("a").removeClass("active");

val--;

$(".el-pagination ul a").each(function () {

if ($(this).text() == val) {

$(this).addClass("active");

}

})

}

for (var i = (val - 1) * curNum; i 

$(".tableMiddle").find(".tableItem").eq(i).show()

}

})

// 下一页

$(".next").on("click", function () {

$(".tableMiddle").find(".tableItem").hide();

if (val == pageSize) {

alert('已经是最后一页');

$(".thispage").html(val);

for (var i = (pageSize - 1) * curNum; i 

$(".tableMiddle").find(".tableItem").eq(i).show()

}

return false;

} else {

if (val == '') {

val = 1

}

pageFn(val, pageSize)

$(".thispage").html(val + 1);

$("#pageNav").find("a").removeClass("active");

val++;

$(".el-pagination ul a").each(function () {

if ($(this).text() == val) {

$(this).addClass("active");

}

})

}

for (var i = (val - 1) * curNum; i 

$(".tableMiddle").find(".tableItem").eq(i).show()

}

});

function pageFn(val, pageSize) {

$("#pageNav").html('');

var pageList = ''

// 页码大于等于4的时候,添加第一个页码元素

if (val != 1 && val >= 4 && pageSize != 4) {

pageList += '' + 1 + '';

}

/* 当前页码>4, 并且<=总页码,总页码>5,添加“···”*/

if (val - 2 > 2 && val <= pageSize && pageSize > 5) {

pageList += '...';

}

/* 当前页码的前两页 */

var start = val - 2; //-1

/* 当前页码的后两页 */

var end = val + 2; //3

if ((start > 1 && val 

end++;

}

if (val > pageSize - 4 && val >= pageSize) {

start--;

}

for (; start <= end; start++) {

if (start <= pageSize && start >= 1) {

pageList += '' + start + '';

}

}

if (val + 2 = 1 && pageSize > 5) {

pageList += '...';

}

if (val != pageSize && val 

pageList += '' + pageSize + '';

}

// pageList +='

»';

$("#pageNav").html(pageList);

}

.pageContent {

height: 100px;

background-color: #fff;

margin-bottom: 62px;

}

.page {

text-align: center;

padding: 30px 0;

}

.page {

padding: 28px 0 0 0;

}

.page span {

display: inline-block;

width: 60px;

height: 24px;

line-height: 24px;

text-align: center;

color: #000;

}

.el-pagination button,

.el-pagination span:not([class*=suffix]) {

display: inline-block;

font-size: 13px;

min-width: 35.5px;

height: 40px;

line-height: 37px;

vertical-align: top;

box-sizing: border-box;

border: 1px solid #DADADA;

color: #666666;

width: 80px;

}

#pageNav {

display: inline-block;

}

a {

text-decoration: none;

font-size: 16px;

font-size: 12px;

color: #333;

}

#pageNav a {

display: inline-block;

width: 40px;

height: 40px;

line-height: 37px;

text-align: center;

color: #666666;

border: 1px solid #DADADA;

text-decoration: none;

}

#pageNav a.active,

#pageNav a:hover {

color: #2E5EC0;

font-weight: bold;

}

.el-pager {

-webkit-user-select: none;

-moz-user-select: none;

-ms-user-select: none;

user-select: none;

list-style: none;

display: inline-block;

vertical-align: top;

font-size: 0;

padding: 0;

margin: 0;

}

.page .el-pager li.active {

height: 26px;

width: 26px;

color: #fff;

background: #ec554c;

}

.el-pager li.active {

color: #606ca5;

cursor: default;

}

.page .el-pager li {

height: 26px;

width: 26px;

min-width: 26px;

line-height: 26px;

margin-left: 8px;

border-radius: 26px;

background: transparent;

}

.el-pager li {

padding: 0 4px;

background: #fff;

vertical-align: top;

display: inline-block;

font-size: 13px;

min-width: 35.5px;

height: 28px;

line-height: 28px;

cursor: pointer;

box-sizing: border-box;

text-align: center;

margin: 0;

}

li {

list-style-type: none;

}

.el-pager li.btn-quicknext,

.el-pager li.btn-quickprev {

line-height: 28px;

color: #303133;

}

ul {

padding: 0;

margin: 0;

box-sizing: border-box;

}

.page .el-pager li {

height: 26px;

width: 26px;

min-width: 26px;

line-height: 26px;

margin-left: 8px;

border-radius: 26px;

background: transparent;

}

.el-pager li {

padding: 0 4px;

background: #fff;

vertical-align: top;

display: inline-block;

font-size: 13px;

min-width: 35.5px;

height: 28px;

line-height: 28px;

cursor: pointer;

box-sizing: border-box;

text-align: center;

margin: 0;

}

[class*=" el-icon-"],

[class^=el-icon-] {

font-family: element-icons !important;

speak: none;

font-style: normal;

font-weight: 400;

font-feature-settings: normal;

font-variant: normal;

text-transform: none;

line-height: 1;

vertical-align: baseline;

display: inline-block;

-webkit-font-smoothing: antialiased;

-moz-osx-font-smoothing: grayscale;

}

.el-pager .more:before {

line-height: 30px;

}

``` # 定义当前页和总页数 $current_page = 1; $total_pages = 10; # 定义分页器最多显示的页码数 $max_pages = 5; # 计算分页器起始页码和结束页码 $start_page = $current_page - floor($max_pages / 2); if ($start_page < 1) { $start_page = 1; } $end_page = $start_page + $max_pages - 1; if ($end_page > $total_pages) { $end_page = $total_pages; $start_page = $end_page - $max_pages + 1; if ($start_page < 1) { $start_page = 1; } } # 输出分页器 echo '<ul class="pagination">'; if ($current_page > 1) { echo '<li><a href="?page=' . ($current_page - 1) . '">上一页</a></li>'; } if ($start_page > 1) { echo '<li><a href="?page=1">1</a></li>'; if ($start_page > 2) { echo '<li>...</li>'; } } for ($i = $start_page; $i <= $end_page; $i++) { if ($i == $current_page) { echo '<li class="active"><a href="#">' . $i . '</a></li>'; } else { echo '<li><a href="?page=' . $i . '">' . $i . '</a></li>'; } } if ($end_page < $total_pages) { if ($end_page < $total_pages - 1) { echo '<li>...</li>'; } echo '<li><a href="?page=' . $total_pages . '">' . $total_pages . '</a></li>'; } if ($current_page < $total_pages) { echo '<li><a href="?page=' . ($current_page + 1) . '">下一页</a></li>'; } echo '</ul>'; ``` 上面的代码是php代码,如果需要转换为jq代码,可以按照以下步骤进行: 1. 将php变量改为jq变量,例如将"$current_page"改为"current_page"; 2. 将php的"echo"改为jq的"$().append()"; 3. 将php的"."改为jq的"+"; 4. 将php的";"改为jq的";"或者省略掉。 转换后的代码如下所示: ``` # 定义当前页和总页数 var current_page = 1; var total_pages = 10; # 定义分页器最多显示的页码数 var max_pages = 5; # 计算分页器起始页码和结束页码 var start_page = current_page - Math.floor(max_pages / 2); if (start_page < 1) { start_page = 1; } var end_page = start_page + max_pages - 1; if (end_page > total_pages) { end_page = total_pages; start_page = end_page - max_pages + 1; if (start_page < 1) { start_page = 1; } } # 输出分页器 $('ul.pagination').empty(); if (current_page > 1) { $('ul.pagination').append('<li><a href="?page=' + (current_page - 1) + '">上一页</a></li>'); } if (start_page > 1) { $('ul.pagination').append('<li><a href="?page=1">1</a></li>'); if (start_page > 2) { $('ul.pagination').append('<li>...</li>'); } } for (var i = start_page; i <= end_page; i++) { if (i == current_page) { $('ul.pagination').append('<li class="active"><a href="#">' + i + '</a></li>'); } else { $('ul.pagination').append('<li><a href="?page=' + i + '">' + i + '</a></li>'); } } if (end_page < total_pages) { if (end_page < total_pages - 1) { $('ul.pagination').append('<li>...</li>'); } $('ul.pagination').append('<li><a href="?page=' + total_pages + '">' + total_pages + '</a></li>'); } if (current_page < total_pages) { $('ul.pagination').append('<li><a href="?page=' + (current_page + 1) + '">下一页</a></li>'); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值