由于某些原因,当我使用Jquery向元素添加类时,我无法使用刚添加的类名执行函数:
$('.openslidecontent .arrow.off').click(function() {
$('.openslidecontent,.rightwrapper .arrow').removeClass('off')
$('.openslidecontent,.rightwrapper .arrow').addClass('on');
return false;
});
$('.openslidecontent .arrow.on').click(function() { // THIS FUNCTION DOES NOT EXECUTE
$('.openslidecontent,.rightwrapper .arrow').removeClass('on');
$('.openslidecontent,.rightwrapper .arrow').addClass('off');
return false;
});
答案 0 :(得分:5)
事件侦听器仅附加到现有元素。您可以切换到事件委派以让侦听器对新创建的元素做出反应
$(document).on('click', '.openslidecontent .arrow', function() {
$('.openslidecontent,.rightwrapper .arrow').toggleClass('on off');
})
另外,正如Rory所评论的那样,您只需更改代码即可使用toggleClass()
并同时将事件挂钩到