私はdiv
とbutton
という単純なhtmlを持っています。 CSS3トランジションのCSSクラスもあります。すぐに同じCSSクラスを追加して削除してください
.animate
{
-webkit-animation-name: animation;
-webkit-animation-duration: 0.3s;
-webkit-animation-iteration-count: 2;
}
ボタンをクリックしてアニメーションを開始します。だから、すぐに削除して.animate
クラスをdivに追加するスクリプトを書いたのですが、残念ながらそれは動作しません。確認してください:
("#button").click(function(){
startAnimation();
});
function startAnimation()
{
if ($("#test-div").hasClass('animate')==true)
{
$("#test-div").removeClass('animate');
startAnimation();
}
else
{
$("#test-div").addClass('animate');
}
}
なぜjqueryは同じクラスをすぐに削除できないのですか?どうすれば修正できますか?
さらに、セレクタをクリックしてcss3トランジションを開始する別の方法がありますか?
ありがとうございました。
UPD。私は、これはややWebKitの実装では合法的なバグ、または非常に予想外の少なくとも何かのように思える(これは単純に間違っていたので、私のオリジナルの答えは、編集を経て「削除」された。)
私はあなたがCSSアニメーションの上にきめの細かい制御を持ってしようとし、その後JavaScriptでアニメーションを使用して簡単に時間を持っていると思います。 – alex
クラスが既に存在する場合は、追加しないでください**。 –
関連するコードでjsFiddleを作成した場合、デバッグが容易になります:) – Domenic