私はページ上のいくつかの要素を移動しようとしていますが、アニメーションが発生している間は、elemntに "overflow:hidden"を適用し、アニメーションが完了すると "overflow"を "auto" 。私はjQueryのを知っている要素がアニメーション化されているかどうかをjQueryでどのように調べるのですか?
は、いくつかの要素がアニメ化されているかどうかを決定するユーティリティ機能を持っていますが、私は
私はページ上のいくつかの要素を移動しようとしていますが、アニメーションが発生している間は、elemntに "overflow:hidden"を適用し、アニメーションが完了すると "overflow"を "auto" 。私はjQueryのを知っている要素がアニメーション化されているかどうかをjQueryでどのように調べるのですか?
は、いくつかの要素がアニメ化されているかどうかを決定するユーティリティ機能を持っていますが、私は
if($(elem).is(':animated')) {...}
詳細情報ドキュメント内のどこにでもそれを見つけることができません。http://docs.jquery.com/Selectors/animated
Or:
$(elem)
.css('overflow' ,'hidden')
.animate({/*options*/}, function(){
// Callback function
$(this).css('overflow', 'auto');
};
はい、ありがとう、ありがとう。どうすればそれを見逃すことができますか?ちょっと古いですよね –
コールバックで "overflow:auto"をプログラミングしてCSSスタイルを上書きしたくない場合は、単純に '.css( 'overflow'、 '')'を使用してください。空の文字列を渡すと、通常、そのプロパティは要素のスタイルから完全に削除されます。これが文書化された動作であるかどうかはわかりませんが、それは非常に便利なトリックです。 –
私はそれがCSSアニメーションをサポートしているとは思わない。 – Gqqnbig
「!」:
if (!$(element).is(':animated')) {...}
あなたがcss
アニメーションを使用して、特定のclass name
を使用してアニメーションを割り当てている場合は、その後、あなたはこのようにそれを確認することができます。何かがアニメーションされていない場合、あなたは簡単に追加することができ、テストする
if($("#elem").hasClass("your_animation_class_name")) {}
アニメーションが終了した後、アニメーションを処理しているクラス名を削除していることを確認してください。アニメーションが終了した後
このコードはclass name
を除去するために使用することができます。
$("#elem").on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend',
function(){
$(this).removeClass("your_animation_class_name");
});
OPはjQueryアニマトンを使用しています。 –
は代替案を示唆しています。そしてあなたはアニメーションを意味しましたか? – KeepMove
はい、私はアニメーションを意味しました。あなたの答えは完全に話題外です。 –
あなたは、アニメーションの要素にCSSを適用したい場合は、あなたが:animated
擬似セレクタを使用して、このようにそれを行うことができ、
$("selector").css('overflow','hidden');
$("selector:animated").css('overflow','auto');
ソース:https://learn.jquery.com/using-jquery-core/selecting-elements/
$('selector').click(function() {
if ($(':animated').length) {
return false;
}
$("html, body").scrollTop(0);
});
このコードは質問に答えるかもしれませんが、どのようにして問題が解決されたのか、および/または理由が解明されれば、回答の長期的な価値は向上します。質の高い回答を提供するためには、この[how-to-answer](http://stackoverflow.com/help/how-to-answer)をお読みください。 – thewaywewere
このタスクにコールバックを使用します。 – Mork0075