【问题标题】:How to always keep exactly one element with active class如何始终将一个元素与活动类保持一致
【发布时间】:2014-07-08 12:22:02
【问题描述】:
我正在尝试使用 jQuery each() 以更简单、更简洁的方式重写它
$imageContainer = $('#indicator-color').children()
for e, idx in $imageContainer
e = $(e)
if idx is currentIdx
e.addClass('active')
else
e.removeClass('active')
提前感谢您的帮助。
【问题讨论】:
标签:
javascript
jquery
coffeescript
【解决方案1】:
使用.toggleClass():
$('#indicator-color').children().each(function(index) {
$(this).toggleClass('active', index == currentIdx);
});
使用 CoffeeScript:
$("#indicator-color").children().each (index) ->
$(this).toggleClass "active", index is currentIdx
【解决方案2】:
可以做这样的事情
$('#indicator-color').children().removeClass('active').eq(currentIdx).addClass('active');