Javascript 页码错误数字进度
这是我的代码:Javascript 页码错误数字进度,javascript,jquery,pagination,sites,Javascript,Jquery,Pagination,Sites,这是我的代码: var pages = Math.ceil(allItems / itemsPerPage); var pagesArray = []; for(var i = 0; i < pages; i++){ pagesArray.push(i); } var show = 3; var offset = pageCounter + show; var showPages = pagesArray.slice(pageCounter, offset); for(var h
var pages = Math.ceil(allItems / itemsPerPage);
var pagesArray = [];
for(var i = 0; i < pages; i++){
pagesArray.push(i);
}
var show = 3;
var offset = pageCounter + show;
var showPages = pagesArray.slice(pageCounter, offset);
for(var h = 0; h < showPages.length; h++){
if(pageCounter == showPages[h]){
selectedPageClass = 'selected';
}else{
selectedPageClass = '';
}
$(".pagination").append("<a href='#' class='" + selectedPageClass +"'>" + showPages[h] + "</a>");
}
var pages=Math.ceil(allItems/itemsPerPage);
var pagesArray=[];
对于(变量i=0;i
我现在的问题是:
如果我有这个数组[“1”、“2”、“3”、“4”、“5”]
当我在“0”页时,第一步应该是:
1(已选)2 3
这很有效。但事情是这样的:
var showPages = pagesArray.slice(Math.min(pageCounter, pages- show), offset);
2(已选)3 4
3(已选)4 5
4(已选)5
5(选定)
但我想要的是:
1(已选)2 3
2(已选)3 4
3(已选)4 5
3 4(已选)5
3 4 5(选定)
您可以更新顶部的变量,pageCounter是基于0的
//editable variables
var pages = 5;
var pageCounter = 0;
var show = 3;
//calculation
var pagesArray = [];
for(var i = 1; i <= pages; i++){
pagesArray.push(i);
}
var offset = pageCounter + show;
var showPages = pagesArray.slice(Math.min(pages - show, pageCounter), offset);
for(var h = 0; h < showPages.length; h++){
if(pageCounter + 1 == showPages[h]){
selectedPageClass = 'selected';
}else{
selectedPageClass = '';
}
$(".pagination").append("<a href='#' class='" + selectedPageClass +"'>" + showPages[h] + "</a>");
}
//可编辑变量
var=5;
var pageCounter=0;
var=3;
//算计
var pagesArray=[];
对于(var i=1;i您应该这样做showPages
:
var showPages = pagesArray.slice(Math.min(pageCounter, pages- show), offset);
请参见下面的演示:
var pages=10,
pageCounter=0;
var pagesArray=[];
对于(变量i=0;i=页面)
返回;
pageCounter++;
分页();
});
//重新分页
$(“#重新启动”)。单击(函数(){
pageCounter=0;
分页();
});
。已选定{
颜色:红色;
}
翻开一页
重新启动