jQuery: after adding class to a new element, can't trigger event by clicking on that class

时光怂恿深爱的人放手 提交于 2019-12-04 21:10:19

Events are bound to the DOM nodes, not the class-names (though the class-names are, of course, used to initially select the relevant element(s)); so when the class-name changes the events are no longer bound, so you need to delegate the event-handler to the parent with on():

$('#container').on('click', '.main', function () {
    $(this).removeClass("main").addClass("other");
    $(this).next()
        .removeClass("other").addClass("main");
});

JS Fiddle demo.

References:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!