我有代码:如果你试图点击按钮2或3,你可以看到正确的效果。
现在,返回并尝试单击按钮1:什么都没有发生。
为什么?谢谢
$('.navigatorUserButtonOff').click(function(e){
e.preventDefault();
$('.navigatorUserButtons').find('.navigatorUserButtonOn').removeClass().addClass('navigatorUserButtonOff');
$(this).removeClass().addClass('navigatorUserButtonOn');
});
最佳答案
因为当您将事件附加到$('.navigatorUserButtonOff')
元素时,第一个按钮不在其中!所以它没有得到事件处理程序。
试试这个:
$('.navigatorUserButtons a').click(function(e){
e.preventDefault();
if($(this).hasClass('navigatorUserButtonOn'))
return false;
$('.navigatorUserButtons').find('.navigatorUserButtonOn').removeClass().addClass('navigatorUserButtonOff');
$(this).removeClass().addClass('navigatorUserButtonOn');
});