2017-07-26 14 views
0

自分自身でjQueryを教え始めましたが、クリックごとに何か異なることが起こる場合に、複数のクリック機能を追加する方法が不思議でした。jQueryを複数回クリックします

私がやろうとしています何の相続人一例

:私はそれは紫色に変化したテキストをクリックしたときに私はもともとだけなので、「紫」のラインを持っていた

$(document).ready(function() { 
$("#color").click(function() { 
$("#change_me").css("color", "purple"); 
$("#change_me").css("color", "black"); 
});//end color 
});//end doc ready 

。私は "黒い"行を追加して(デフォルトの色に戻す)、紫色の状態をバイパスします。

は、私は別のクリック機能を追加しようとしたが、それは

を動作しませんでした
+1

それは紫色のラインをバイパスしていません。紫色の線を実行してから黒線を実行しています。それはちょうどあなたがそれを見ないほど速く起こります。クリックごとに色を変えたい場合は、ロジックを追加する必要があります。フラグを設定してクリックごとに変更するようにします。または、http://api.jquery.com/toggleclass/ – j08691

+0

のような機能を調べると、最初のクリックで紫色に変わり、次に2回目のクリックで黒色に変わりますか?三番目のものはどうですか? – ADyson

+0

新しい色を適用する前に、現在の色を確認する必要があります。したがって、現在紫色の場合は黒色に変更します。同様に黒い場合は紫色に変更します – markpsmith

答えて

3

あなたがクリックした後にしたいとのそれは追加/クラスを削除します]をクリックし、色を持つクラスを作成し、そのためのjQuery toggleClassを使用することができます

$(document).ready(function() { 
 
$("#color").click(function() { 
 
$("#change_me").toggleClass("purple"); 
 
//$("#change_me").css("color", "black"); 
 
});//end color 
 
});//end
.purple{ 
 
    color:purple; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="color"> 
 
<p id="change_me"> 
 
Click on the text to change its color 
 
</p> 
 
</div>

あなたは以上の2色の間で変更したい場合は、この

のようにそれを行うことができます

$(document).ready(function(){ 
 
    $("#change_me").toggle(
 
     function(){$("#change_me").css({"color": "purple"});}, 
 
     function(){$("#change_me").css({"color": "black"});}, 
 
     function(){$("#change_me").css({"color": "green"}); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script> 
 
<div id="color"> 
 
<p id="change_me"> 
 
Click on the text to change its color 
 
</p> 
 
</div>

+0

それは完璧なRam Segevです。ありがとうございました – markst33

+0

あなたを歓迎します:-) –

関連する問題