jQuery可以removeClass但不能addClass用于具有.on(“click”)的元素

时间:2018-01-10 11:26:08

标签: jquery css delegates click

我想要一个在点击时打开的框,并在点击按钮.c-btn时关闭。我已在父div上设置了委派事件处理,这样就可以删除.speaker__item--expanded但无法添加.speaker__item--collapsed

如果我手动删除.speaker__item--collapsed并在开发工具中添加speaker__item--expanded,则关闭按钮会生效,因此我认为它与我设置.on点击功能的方式有关但我看不出如何解决它。

这是jsfiddle:https://jsfiddle.net/rhdcd5am/

1 个答案:

答案 0 :(得分:0)

这是因为它是您点击的动态创建的元素。

只需更改

$('.c-btn').click(function() {

$(document).on('click','.c-btn', function() {

这将解决它。