私はJavascriptは初めてですが、プログラミングは初めてです。fadeOut
次のような jQuery オブジェクトを呼び出します。
$(x).fadeOut('fast');
他にもフェードアウトしてフェードインするものがありますが、それらはお互いに待つ必要があり、どれだけの人がこれを行っているかは必ずしもわかりません. x
フェードインまたはフェードアウトするアイテムを含む配列の文字列です。私の最初の試みでは、次のfadeOut
ようにコールバック関数を使用しました。
$(x).fadeOut('fast', function(){ foo(modifiedArray); })
必要なメソッドはどこfoo
にあり、 modifiedArray は配列マイナスx
です。それでもまだ待たなかったので、次に試しました:
$(x).fadeOut('fast');
while( $(x).css('display') != 'none' ){}
foo(modifiedArray);
しかし、ループは決して終わりません。foo(modifiedArray)
再度呼び出す前にアニメーションを待機させるにはどうすればよいですか?
編集:ここに完全なコードがあります
function animateElements(elements){
if (elements.length == 1){
var x = elements[0];
$(x).fadeIn('slow');
}
else{
var x = elements.pop();
$(x).fadeOut('fast');
while( $(x).css('display') != 'none' ){}
animateElements(elements);
}
}