我正在尝试将类添加到id动态。问题是我需要为当前和下一个ID添加一个类。我有这段代码:
if ($('#id_0').hasClass('active')){
$('#id_0').removeClass("active");
$('#id_1').addClass("active");
}
else if ($('#id_1').hasClass('active')){
$('#id_1').removeClass("active");
$('#id_2').addClass("active");
}
等。
所以我试着像这样动态写它:
$('.my-class').each(function(i,e) {
if ($('#id_' + (i)).hasClass('active')){
$('.#id_' + (i)).removeClass("active");
$('#id_' + (i+1)).addClass("active");
}
问题是这条线不能正常工作
$('#id_' + (i+1)).addClass("active");
有什么想法吗? 感谢
答案 0 :(得分:0)
正在运行但不动态的代码是:
if ($('.title-slider#id_0').hasClass('active')){
$('.title-slider#id_0').removeClass("active");
$('.title-slider#id_1').addClass("active");
}
else if ($('.title-slider#id_1').hasClass('active')){
$('.title-slider#id_1').removeClass("active");
$('.title-slider#id_2').addClass("active");
}
else if ($('.title-slider#id_2').hasClass('active')){
$('.title-slider#id_2').removeClass("active");
$('.title-slider#id_3').addClass("active");
}
else if ($('.title-slider#id_3').hasClass('active')){
$('.title-slider#id_3').removeClass("active");
$('.title-slider#id_4').addClass("active");
}
else if ($('.title-slider#id_4').hasClass('active')){
$('.title-slider#id_4').removeClass("active");
$('.title-slider#id_5').addClass("active");
}
else if ($('.title-slider#id_5').hasClass('active')){
$('.title-slider#id_5').removeClass("active");
$('.title-slider#id_6').addClass("active");
}
else if ($('.title-slider#id_6').hasClass('active')){
$('.title-slider#id_6').removeClass("active");
$('.title-slider#id_7').addClass("active");
}
所以我试着这样写:
$('.title-slider').each(function(i,e) {
if ($('.title-slider#id_' + (i)).hasClass('active')){
$('.title-slider#id_' + (i)).removeClass("active");
$('.title-slider#id_' + (i+1)).addClass("active");
}
});
最后一行不起作用。只有前两行可以。
答案 1 :(得分:0)
这个解决方案是:
$('.title-slider.active').removeClass(function(){
$(this).next().addClass('active');
return 'active';