2016-08-16 6 views
0

jQueryのプラグインに1つ問題があります。それは、アニメーションクラスを追加し、DOM要素内の何かを変更し、間隔を含む。jQueryプラグインから遅延を削除する

うまくいくためには、CSSアニメーションに合わせて完全に接続する必要があります。それはこのように見えます。

(function($) { 
 $.fn.foo = function() { 
    //add class to element, now it's animating! 
    //do something 

    setInterval(fooBar(),time); 

} 

})(jQuery); 

時には、特にモバイルで遅延が見られることがあります。遅延をどのように取り除き、これから遅れることができますか? setIntervalとanimationは同じ持続時間を持ち、同時に開始して終了する必要があります。 どのような解決策ですか?

+0

アニメーションを実行するCSSを表示してください。 – trincot

+0

あなたの 'setInterval'が間違っています。最初の引数は、関数への参照ではなく、関数への参照でなければなりません( 'fooBar()'が関数を返さない限り)。 – Barmar

+0

私はまだ騒ぎです;)アドバイスありがとう –

答えて

1

animationendイベントを使用してください。

$.fn.foo = function() { 
    // add class to element, now it's animating 
    $(this).on("animationend", fooBar); 
} 

このイベントは、CSSアニメーションが完了すると自動的にトリガーされます。

関連する問題