如果特定选择器具有/没有特定类,则将if / Else语句写入addClass / removeClass

时间:2011-11-10 16:07:31

标签: javascript jquery

我想在jQuery中编写一个If语句,它将完成以下任务:

如果li.slideNum:首先有一个'active'类,addClass'禁用'到li.prev,否则removeClass'active'来自li.prev。

我有一系列带有导航的幻灯片:上一页| 1 | 2 | 3 | 4 | 5 |下一个。当幻灯片1具有“活动”类时,我想要将“禁用”类添加到“上一个”,当幻灯片5具有“活动”类时,我想要将“禁用”类添加到“下一个”。当然,当幻灯片2-5具有“活动”类时,确保Previous没有“禁用”类,而当幻灯片1-4具有“活动”类时,Next没有“禁用”类。我有其他所有的幻灯片和导航工作,这是它完全正常工作之前的最后一件事。

关于如何做到最好的任何想法?

3 个答案:

答案 0 :(得分:3)

听起来你正在寻找这个:

$('li.prev').toggleClass('active',$('li.slideNum:first').hasClass('active'));

答案 1 :(得分:0)

你几乎做到了,检查prevnexthasClass

if($('li.slideNum:first').hasClass('active')){
  $('...').addClass('...');
}else{
  ...
}

答案 2 :(得分:0)

您可以维护currentIndex类型值,然后根据该值添加/删除所需的类。

这可以通过以下方式简化:

if(currentIndex === 0) { 
  //disable previous 
}
else if(currentIndex === 4) 
{ 
  //disable next 
}
else 
{ 
  //enable them both 
}