2012-01-10 9 views
0

こんにちは、私はいくつかの遅れを持つ単純なアニメーションをしようとしていますが、動作していないので、私に手を差し伸べてください。ここでは、コードJqueryの遅延が働いていません

$(document).ready(function() { 
    $('.detailsholder').hide() 
    $(".detailsholder").animate({"top": '-520px'},1) 
    $('.detailsholder').hide() 
    $('.detailsholder').fadeIn(500) 
    $('.detailsholder').delay(5000).animate({'top': "-260px",'easing': "easeInElastic"}, 400).delay(5000).('.detailsholder').animate({'top': "0px",'easing': "easeInElastic"},400); 
}); 
+4

セミコロンはどこにありますか? –

+5

jQueryステートメントを連結する必要があります。 –

+2

:(これはJavaScriptの知識に対するjQueryの悪影響の例です – Harmen

答えて

0
$(function(){ 
    $('.detailsholder').hide().animate({"top": '-520px'},1).fadeIn(500).delay(5000).animate({'top': "-260px",'easing': "easeInElastic"},400).delay(5000).animate({'top': "0px",'easing': "easeInElastic"},400); 
}); 
+0

これはうまくいかない –

0

がある私はあなたがコールバックにそれを置く必要があり、その場合には、アニメーションが終了した後、各delay()が発生するとします。今のように、アニメーションが発生すると遅延が実行されます。

また、コメントでは、実際にステートメントをチェーンし、セミコロンを行末に追加する必要があります。あなたのコードの行6で間違った何かがあり

+0

はいそれぞれのアニメーションの後に遅れたい –

0

は(私はより良い読書のために、ここでいくつかの中にその行を分割さ:

$('.detailsholder') 
.delay(5000) 
.animate({'top': "-260px",'easing': "easeInElastic"}, 400) 
.delay(5000) 
.('.detailsholder') // The method is missing here! 
.animate({'top': "0px",'easing': "easeInElastic"},400); 

注:また、あなたのjQueryのコードをチェーンし、各コマンドの後にセミコロンを置く必要があります。 。

遅延が唯一のアニメーションキューに適用されますので、あなたはまた、イベントをキューに入れることができます
+0

私はこれを試しても動かない –

+0

「方法はここにありません」? – Stefan

+0

これはあなたのコードなので、これはうまくいかないのですか?ライン。 –

0

ここではsolutionです。

$('.detailsholder') 
    .hide() 
    .css('top', '200px') 
    .fadeIn(500) 
    .delay(2000) 
    .animate({'top': "100px", 'easing': "easeInElastic"}, 400) 
    .delay(2000) 
    .animate({'top': "0px", 'easing': "easeInElastic"}, 400); 

アニメーションが非常にユニークであるように、クラスではなくIDを使用することを検討することがあります。

お楽しみください! :)

関連する問題