Raphael を使用.animateWith()
して、高速なアニメーションを同期させることに成功した人はいますか? 文書化が不十分です。ライブラリの作成者にはビデオのデモがありますが、コードは見つかりません。
私は、ライン(メトロノームのアーム)と台形の「重み」で構成されるJavascriptメトロノームを持っています。これは、最終的にテンポを示すために上下に移動します。ここに実用的なフィドルがあり、問題の行は次のとおりです。
var ticktock = Raphael.animation({
"50%": { transform:"R20 " + x + "," + y, easing: "sinoid", callback: function() { tick(this, repeats, done); }},
"100%": { transform:"R-20 " + x + "," + y, easing: "sinoid", callback: function() { tick(this, repeats, done); }}
}, interval).repeat(repeats / 2);
arm.animate(ticktock);
weight.animateWith(arm, ticktock, ticktock);
フィドルをチェックして、高いテンポで約 20 ティックを指定すると、腕の後ろに体重の遅れが見られるはずです。(そうでない場合は、数回試してください-マーフィーの法則など)これはまさにanimateWith()が防止したものだと思いました。多分私はそれを間違って使用しています。
.animateWith() 関数のRaphael ソースを見ると、各アニメーションの .start パラメータ FWIW を同期していることがわかります。