0

Javascript を使用していくつかの関数を簡単にチェーンする必要があります。私はいくつかのライブラリを見つけましたが、よりスマートなものはqueryjsのようです。

しかし、前の関数の終了を待っている各関数の実行を待つ必要があります。を使用してトリックを作成しようとしましsetTimeoutたが、まったく機能せず、すべてが同時に実行されます。コードは次のようになります。

<script src="http://d3js.org/queue.v1.min.js"></script>

<script>
    function timingOut(i){
        console.log('timing out: '+i);
    }

    function timingOut2(i){ 
        console.log('foo 2: '+i);
    }

    var foo = function(i,callback){
        callback(null,i);
    }

    var foo2 = function(i,callback){
        setTimeout(timingOut2(i),5000);
        callback(null,i);
    }
    var finish = function(error,results){
        console.log(results);
    }

    queue(2)
        .defer(foo,1)
        .defer(foo2,2)
        .awaitAll(finish);
    </script>

すべての関数がアニメーションになるわけではないため、jquery animate などの他のソリューションは使用していません。

4

0 に答える 0