我有代码:如果你试图点击按钮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');
});

07-24 15:25