2

1.特定の文字列を別の文字列よりも優先するか、2.現在実行中の文字列を中断して新しい文字列を開始する方法はありますか?

私はこのような次のコードを持っています。ボタンの色を緑→黄→点滅→紫→緑に戻すことになっています。

html:

<input id="i" type="button" value="I" style="width:80px;height:80px;color:#ffffff;background-color:#0CEDCF;border-color:#1BE0DD"/>

Javascript:

$('#i').animate({backgroundColor: "#F8FF2B"},900);
    setTimeout(
    function(){
      $('#i').css('color', '#5142F5');
      $('#i').css('background-color', '#F760F2');
    }, 350);
    setTimeout(
    function(){
      $('#i').animate({backgroundColor: '#0CEDCF'},302);
    }, 480);
    setTimeout(
    function(){
      $('#i').css('color', '#FFFFFF');
    }, 602);

基本的に、私は欲しい

$('#i').animate({backgroundColor: "#F8FF2B"},900);

時間になったらすぐに効果を止める

setTimeout(
function(){
      $('#i').css('color', '#5142F5');
      $('#i').css('background-color', '#F760F2');
}, 350);

有効にするために。これまでのところ、これを行う唯一の方法は 900 を 350 に短縮することですが、私のプログラムでは、他の機能で適切に動作させるために、900 を使用する必要がある場合があります。

4

2 に答える 2

0

アニメーションを停止してキューをクリアするには、現在のアニメーションの後に発生するアニメーションをすべて削除します。次を使用します。

$('#i').stop(true, true);

ドキュメントから

.stop( [clearQueue ] [, jumpToEnd ] )

キューclearQueueに入れられたアニメーションも削除するかどうかを示すブール値であり jumpToEnd、現在のアニメーションをすぐに完了するかどうかを示します。デフォルトは false です。

于 2013-07-08T08:01:37.477 に答える