クリックすると、別の要素のクラスをチェックする要素があります。
特定のクラスがある場合は、それを削除して別のクラスに置き換えます。繰り返しますが、クリックすると、スワップされたクラス名でそのプロセスが逆になります。
(ビジュアルを与えるために、クラスは素敵な星のアイコンで、影付きのバージョンです)
以下のコードは少し冗長すぎると思います。
誰でもそれを述べるためのより良い/短い方法を見ることができますか?
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$(".clickme").click(function(){
if($("#staricon").hasClass("starON")){
$("#staricon").removeClass("starON").addClass("starSHADED");
}else if($("#staricon").hasClass("starSHADED")){
$("#staricon").removeClass("starSHADED").addClass("starON");
}
});
});
</script>
また、starON
とstarSHADED
はスプライトの一部です。
上記のコードは機能します!しかし、私はそれが最適化できると確信しています。
jQuery には.toggleClass()
API があるようですが、2 つのクラスを間違って交換しています。