4

切り替えたい画像が3つあります。それらのそれぞれをクラスに入れ、css でイメージを変更します。2 つのクラスを切り替えることができるようになりましたが、3 つ目のクラスを追加するとコードが機能しません。それらのどのクラスも開始クラスにすることができます。

    $('.one').click(function(){                             
        $(this).toggleClass("two");
        $(this).toggleClass("one");

    });
     $('.two').click(function(){                             
        $(this).toggleClass("one");
        $(this).toggleClass("two");

    });

この行を追加すると:

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

全然揺れない……。

それらすべてを1つの関数に入れることができる方法を知っていますか?

ありがとう。

4

3 に答える 3

14

フィドルの例: http://jsfiddle.net/KdfEV/

このコードにより、一連の定義されたクラスを循環できます

$('.one, .two, .three').click(function() {                             
    this.className = {
       three : 'one', one: 'two', two: 'three'
    }[this.className];
});
于 2012-06-05T09:09:34.460 に答える
4
$('.one, .two, .three').click(function(){                             
        $(this).toggleClass("one, two, three");
    });
于 2012-06-05T08:54:17.907 に答える
0

最も安全な方法は、不要なクラスを削除し、必要なクラスを追加することです。

// Switch to class 'three'
$(this).removeClass('one').removeClass('two').addClass('three');
于 2012-06-05T08:54:27.313 に答える