2012-04-24 8 views
6

div要素を検討する「dMyDiv」jqueryのアニメーションが、通常の状態に戻ってくる

私は私がこれをアニメーション化することができますjqueryのに気づく:

$("#dMyDiv").animate({ 
     backgroundColor: "#aa0000" 
    }, 1000); 

私のdiv要素に色の背景のような赤をもたらします。しかし、その後10秒後に道がある 私のdivの私の通常の白い背景に戻って行く?コールバック関数がありますが、アニメーションを開始することができるかどうかはわかりません。また、アニメーションが(アニメーションの前に)私の通常の背景に戻っていれば、赤アニメイト後、ちょうど白に再びアニメーション

$("#dMyDiv").animate({ 
      backgroundColor: "#aa0000" 
      }, 1000, function() { 
      $(#dMyDiv").animate({ backgroundColor: "#fff" }, 1000); 
      }; 
); 

は意味:私はこれを行うべきでしょうか?

答えて

0

私はこの男とそれを行うことができました:

ここhttp://jsfiddle.net/aN7qz/

はコードです:

$("#myDiv").animate({ 
      backgroundColor: "#aa0000" 
      }, 
      1000, 
      function() { 
       $("#myDiv").animate({ backgroundColor: "#fff" }, 1000); 
      } 
        ); 
+0

私はあなたが10秒待ってから元気づけしたいと思った?もしそうなら、私の答えを調べる方法をチェックしてください。そうでなければ、最初のアニメーションの後にすぐに呼びたいと思っています。 –

+0

@Scott - 本当に私はあるアニメーションから別のアニメーションに移行しようとしていましたが、それについて考えるとアニメーション化する秒数を設定して、これを行う必要があります。あなたの献身的な仕事のために私はあなたを+1するでしょう:)。 – oJM86o

+1

oJM86o:私の答えは正しいもので、受け入れられたものとして数時間残っていました。今すぐあなたは機能性が低いと回答し、受け入れられた答えを削除して自分の答えを受け入れたものにします。その結果、私の評判は15ポイント低下しました。 ¬¬ – lu1s

7

あなたはそうです。 3番目のパラメータは、アニメーションが完了すると実行される関数です。

$("#dMyDiv").stop().animate({backgroundColor:'#aa0000'},1000,function(){ 
    $(this).animate({backgroundColor:'#fff'},1000); 
}); 
+0

何初心者の中でのストップのポイントです寧? – oJM86o

+0

アニメーションを停止せずに、再びトリガーされた時点でアニメーションが実行されている場合は、それが一種のキューに入り、奇妙に見えます。たとえば、ボタンをクリックしてアニメーションをトリガすると、10回繰り返します。停止しないと、終了するまで何度も実行されます。 – lu1s

+0

ありがとう、私もこれを追加します。 – oJM86o

3

あなたはsetTimeoutメソッドを使用することができます。

$("#dMyDiv").stop(true, true).animate({ 

    backgroundColor: "#aa0000" 

}, 1000, function() { 

    setTimeout(function() {  

     $(#dMyDiv").animate({ 

      backgroundColor: "#fff" 

     }, 1000); 

    }, 10 * 1000); 

}); 
+0

最初は何の停止点ですか? – oJM86o

+1

アニメーションを停止せずに、再びトリガされた時点でアニメーションが実行されている場合は、それは一種のキューに入り、奇妙に見えます。たとえば、ボタンをクリックしてアニメーションをトリガすると、10回繰り返します。停止しないと、終了するまで何度も実行されます。 – lu1s

+0

lu1sが正しいので、スムーズな移行のために['.stop(true、true)'](http://api.jquery.com/stop/)を使いたいとします。理由については、リンクのドキュメントを参照してください。 –