Javascript 分页脚本样式单击下一步/上一步按钮后的当前页码
我正在编写分页脚本(代码如下);我不知道在点击下一个按钮后如何选择当前页码(我在下面缺少的位置添加了注释:Javascript 分页脚本样式单击下一步/上一步按钮后的当前页码,javascript,html,jquery,css,Javascript,Html,Jquery,Css,我正在编写分页脚本(代码如下);我不知道在点击下一个按钮后如何选择当前页码(我在下面缺少的位置添加了注释:removeClass('current');和addClass('current')到活动页码;)。样式应与直接单击页码$(“#pagin li a”)相同。单击(function()… 这是一张照片: 提前感谢您的帮助 pageSize = 4; incremSlide = 5; startPage = 0; numberPage = 0; var pageCount = $(&
removeClass('current');
和addClass('current')到活动页码;
)。样式应与直接单击页码$(“#pagin li a”)相同。单击(function()…
这是一张照片:
提前感谢您的帮助
pageSize = 4;
incremSlide = 5;
startPage = 0;
numberPage = 0;
var pageCount = $(".browsethearchive-items").length / pageSize;
var totalSlidepPage = Math.floor(pageCount / incremSlide);
for(var i = 0 ; i<pageCount;i++){
$("#pagin").append('<li><a href="#">'+(i+1)+'</a></li> ');
if(i>pageSize){
$("#pagin li").eq(i).hide();
}
}
var prev = $("<li/>").addClass("prev").html("Prev").click(function(){
startPage-=1;
incremSlide-=1;
numberPage--;
slide();
});
prev.hide();
var next = $("<li/>").addClass("next").html("Next").click(function(){
startPage+=1;
incremSlide+=1;
numberPage++;
slide();
});
$("#pagin").prepend(prev).append(next);
$("#pagin li").first().find("a").addClass("current");
slide = function(sens){
$("#pagin li").hide();
for(t=startPage;t<incremSlide;t++){
$("#pagin li").eq(t+1).show();
}
if(startPage == 0){
next.show();
prev.hide();
}else if(numberPage == totalSlidepPage ){
next.hide();
prev.show();
}else{
next.show();
prev.show();
}
}
showPage = function(page) {
$(".browsethearchive-items").hide();
$(".browsethearchive-items").each(function(n) {
if (n >= pageSize * (page - 1) && n < pageSize * page)
$(this).show();
});
}
showPage(1);
$("#pagin li a").eq(0).addClass("current");
var $listItems = $('#pagin li a');
var activeLink;
$("#pagin li a").click(function() {
$listItems.removeClass('current');
$(this).addClass('current');
var activeLink=$(this);
showPage(parseInt($(this).text()));
});
var i = 1;
$(".prev").click(function() {
// removeClass('current');
// addClass('current') to active pagination number;
if (i != 1) {
showPage(--i);
}
});
$(".next").click(function() {
// removeClass('current');
// addClass('current') to active pagination number;
if (i < ($('.browsethearchive-items').length)/4) {
showPage(++i);
}
});
页面大小=4;
增量滑动=5;
起始页=0;
numberPage=0;
var pageCount=$(“.browsethearchive items”).length/pageSize;
var totalSlidepPage=Math.floor(页面计数/增量滑动);
对于(变量i=0;ipageSize){
$(“#pagin li”).eq(i).hide();
}
}
var prev=$(“”).addClass(“prev”).html(“prev”)。单击(函数(){
起始页-=1;
增量滑动-=1;
数字页--;
幻灯片();
});
prev.hide();
var next=$(“”).addClass(“next”).html(“next”)。单击(函数(){
起始页+=1;
增量滑动+=1;
numberPage++;
幻灯片();
});
$(“#pagin”).prepend(prev).append(next);
$(“#pagin li”).first().find(“a”).addClass(“current”);
滑动=功能(传感器){
$(“#pagin li”).hide();
对于(t=startPage;t=pageSize*(第1页)和&n
这里的更新是对工作代码的修改->->,多亏了@biberman 您可以通过以下方式选择类为“current”的列表元素:
$("#pagin li a.current")
要将类“current”设置为下一个或上一个列表元素,可以使用jQuery方法next()
和prev()
。由于将类设置为列表元素内部的锚,因此首先必须使用parent()
函数选择锚的父级,以获取列表元素本身,然后在使用next()
或prev()
后,使用find(“a”)
选择新列表元素内部的锚
工作示例:
$(“.prev”)。单击(函数(){
让prevLi=$(“#pagin li a.current”).parent().prev().find(“a”);
if(prevLi[0]){
$(#pagin li a.current”).removeClass(“current”);
prevLi.addClass(“当前”);
}
});
$(“.next”)。单击(函数(){
设nextLi=$(“#pagin li a.current”).parent().next().find(“a”);
if(nextLi[0]){
$(#pagin li a.current”).removeClass(“current”);
nextLi.addClass(“当前”);
}
});代码>
ul{
列表样式:无;
}
李{
显示:内联块;
宽度:20px;
高度:20px;
文本对齐:居中;
}
李:不是(.next,.prev){
背景颜色:灰色;
}
李安{
背景颜色:蓝色;
}
警告:以下代码未经测试
在每个页面上设置一个包含页码的id(`);
然后使用此id以正确的
$(“.prev”)。单击(函数(){
如果(i!=1){
我--;
$listItems.removeClass('current');
$('pagin li a#page-${i}')。addClass('current');
展示页(i);
}
});
将处理当前页面链接的代码移动到showPage
函数中,那么您已经将其作为$(“#pagin li”).eq(i).hide()
->$(“#pagin li”).removeClass(“active”).eq(page).addClass(“active”)
嗨!我不能让您最后一次编辑工作,但前面的代码可以工作:``var I=1$(“.prev”)。单击(函数(){let prevLi=$(“#pagin li a.current”).parent().prev().find(“.a”);$(“#pagin li a.current”).removeClass(“current”);prevLi.addClass(“current”);if(i!=1){.showPage(--i);}``下一个按钮的等价项是:@user15885108该代码代表什么?$(“.next”)。单击(函数(){let nextLi=$(“#pagin li a.current”).parent().next().find(“a”);$(“#pagin li a.current”).removeClass(“current”);nextLi.addClass(“current”);if(i<($((.browsetheachives”).length)/pageSize){showPage(++i)} });此代码用于在向左/向右滑动分页时移动到上一页/下一页;我可能与更大一部分代码有关的问题是,当单击“下一步”和“上一步”按钮时,它们会按顺序移动+1页,但如果我再向前一点单击一页,它就不会再向前移动+1页..什么不起作用-分页或showPage()函数?或者if(nextLi[0])
和if(prevLi[0])
不工作?