jquery - addClass/removeClass 无法正常工作

标签 jquery addclass removeclass

我有 5 个按钮,每个按钮都有 .leg 类,我希望当用户单击其中一个按钮时在类属性上添加“active”并将其从其他属性中删除,所以我有:

j$(".leg").on "click", (event)->
  j$('.leg').removeClass('active')
  j$(event.target).addClass('active')

有时,当我单击其中一个按钮时,不会添加“事件”类。我怀疑removeClass尚未完成其执行,添加“active”然后再次删除。由于 removeClass 没有回调,还有其他方法可以解决此问题吗?

http://jsfiddle.net/k4605e3z/

最佳答案

使用$(this)代替$(e.target):

$('.leg').click(function(event){
  $('.leg').removeClass('active');
  $(this).addClass('active');
});

this 是添加点击处理程序时选择的 dom 元素。

JSFIDDLE

关于jquery - addClass/removeClass 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27024701/

相关文章:

javascript - jQuery:如何选择唯一的 ID?

javascript - 如何使用javascript获取primefaces元素值

jquery - 使用 jQuery addClass/removeClass 时如何返回默认样式/主题?

javascript - 删除除一类以外的所有类

jQuery removeClass 持续时间不起作用?

jQuery 表单操作

jQuery Ajax : Copy - Paste thingy

JQuery addClass和removeClass问题

jquery - 返工 jQuery 脚本以利用类/Id 的通配符定位

jquery - 如果 jquery 中的类名更改,则删除函数