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 などの他のソリューションは使用していません。