-1

クリックしたときに「check」のクラスを持つ特定の画像に「nocheck」のクラスを追加しようとしています。以下はこれまでの私のコードですが、望ましい結果は得られません。私が間違っていることを教えてください。

$(document).ready(function() {
    $("img.check").click(function() {
        $(this).addClass("nocheck");
    });​
});

ありがとう

4

3 に答える 3

2

Igor の言うとおりです。あなたのコードは正しく書かれています。このフィドルを見てください。コードの動作を示します。私の推測では、.nocheck クラスの一部のスタイルが、.check クラスの同じスタイルによってオーバーライドされていると思われます。私のフィドルの css で !important フラグを使用していることに注意してください。

Chrome のデバッガ ツールの使い方を知っていますか。これを使用して、DOM を簡単に調査できます。あなたのコードは機能しているのに、あなたはそれに気づいていないのではないかと思います。DOM インスペクターは、画像要素のクラス属性を簡単に表示するので、何が起こっているかを正確に知ることができます。これを使用して JavaScript にブレークポイントを設定し、イベントが発生していることを確認することもできます。

于 2012-04-07T05:05:55.760 に答える
1

次のように、このイメージの古いクラスを削除する必要があります。

http://jsfiddle.net/zZx8P/

于 2012-04-07T04:40:17.977 に答える
0

「nocheck」を追加すると同時に「check」を削除する必要がある場合があります。.toggleClass()を使用します:

$(this).toggleClass("check nocheck");
于 2012-04-07T04:42:29.113 に答える