0

私はこれを理解しようと頑張っています。

上:-100%から上:100%に移動するためにjqueryでアニメーション化した雨の背景画像を持つ2つのdivがあります。divをループさせて、視覚効果として雨の連続的な流れが降りてくるようにします。

アニメーションをループさせることはできますが、完全なサイクルが完了するまで待機してから再開するため、アニメーションが終了するまで1〜2秒かかります。

私の解決策は、2つの同一のdivを持つことでした。最初のdivはアニメーションを開始し、それがtop:0%に達したときに、2番目のdivを開始します。次に、2番目のdivもtop:0%に達したときに、最初のdivをループする必要があります。

div位置の値を与える変数を作成できますが、最初はピクセル単位で(パーセントが必要)、次にドキュメントの準備ができたら1回だけ数値を返します(継続的に更新する必要があります)

これは達成可能ですか?これまでの私のコードは次のとおりです。

$(document).ready(function(){
        //RAIN
        function rain1() {
            $("#rain1").animate({ top: '100%'}, 4000, 'linear', function() {
                $(this).css("top", "-100%").delay(4000);
                rain1();
    });
        }

        function rain2() {
            $("#rain2").delay(4000).animate({ top: '100%'}, 4000, 'linear', function() {
                $(this).css("top", "-100%");
                rain2();
    });
        }

        $('a.control-rain').click(function(){
            rain1();
            rain2();
        });
    });
4

1 に答える 1

0

コード iso -100% でトップを 0% にリセットしただけです。それがあなたの望みかどうかはわかりません。

ここで働くフィドル:http://jsfiddle.net/ZHSKj/1/

于 2012-09-30T16:59:01.683 に答える