2011-11-14 3 views
1

こんにちは、可変性を得る& firefox(かなり悪い)chrome(ok) これは最初のアニメーションを実行しないことがあります。jQuery animate()。delay()。animate()私はこの権利をしていますか?

私はこの権利を構成しましたか?

$notification.animate({ 
    top: '-=' + ($notification.outerHeight() + 20) 
    }, 1500, function() { 
     $(this).delay(2000); 
     $(this).animate({ 
      top: '+=' + ($notification.outerHeight() + 20) 
     }, 1500, function() { 

    }); 
}); 
+0

のNoアイデアを。あなたは何を求めているのですか?問題を示すサンプルページを投稿できますか? – Blender

答えて

2

を試してみて、このお試しください:

$notification 
    .animate({ 
     top: '-=' + ($notification.outerHeight() + 20) 
    }, 1500) 
    .delay(2000) 
    .animate({ 
     top: '+=' + ($notification.outerHeight() + 20) 
    }, 1500); 

EDIT:フィドルhttp://zequinha-bsb.int-domains.com/notification.html

+0

あなたが示唆したことは何もありませんが、私は彼の意図ではないと思う傾向があります。あなたが見ることができるように、彼はユーザーが何かを読んでほしいことを意味する通知でこれを試しています。あなたのアプローチを使用すると、2番目のアニメーションがトリガする前に通知を読むのに半秒かかります。私は彼が通知を読むためにユーザーに2秒を与えたいと思う。 –

+1

このコードは、通知を2秒間表示する意図があります。 'delay'関数は、キュー内の次の項目の実行を遅らせます。したがって、このコードは1.5秒間アニメーション化され、2秒待ってから再び1.5秒間アニメーション化されます。 – Nathan

+0

表示されたアドレスで私のフィドルを試してみてください。 –

3

この

$notification.animate({ 
    top: '-=' + ($notification.outerHeight() + 20) 
    }, 1500, function() { 
     $(this).delay(2000).animate({ 
      top: '+=' + ($notification.outerHeight() + 20) 
     }, 1500, function() { 

    }); 
}); 
+1

お世話になりました! – Baconbeastnz