0

私は現在、ボタンがクリックされた場合に新しいクラスを切り替える小さなJQuery関数を使用して実行しています。

    $(".button1").click(function () {

        $(this).toggleClass("button2");

    });

これは問題なく機能しますが、私の問題は、5つのボタンが連続していて、一度に1つだけ新しいクラスを設定したいということです。現時点では、他のボタンのいずれかをクリックすると、新しいクラスも適用されます。誰かが別のボタンをクリックした場合に、元のボタンからbutton2クラスを削除して、新しくクリックしたボタンにのみ適用するようにします。

これを達成するための考えはありますか?

4

3 に答える 3

2

これを試して:

$(".button1").click(function () {
    $(this).parent().find(".button2").removeClass("button2");
    $(this).addClass("button2");
});
于 2013-03-25T05:04:38.373 に答える
1

そのために.not()を使用します。

$(document).ready(function(){    
    $(".button1").click(function () {    

        $('.button2').not(this).removeClass('button2');
        $(this).toggleClass("button2");    
    });    
});

http://forum.jquery.com/topic/jquery-not-thisを読む

フィドル http://jsfiddle.net/NXBqU/1/

于 2013-03-25T05:12:51.003 に答える
0

これはあなたが望むことをするはずです:

$('.button1').click(function () {
    $('.button2').removeClass('button2');
    $(this).addClass('button2');
});
于 2013-03-25T05:07:41.820 に答える