私は、通常の paperscript ルートを使用するのではなく、javascript を介して紙を制御する必要があるプロジェクトに取り組んでいます。私は現在、理解できない奇妙な動作のために立ち往生しています。ここに私が実行しているコードの簡略化されたバージョンがあります
paper.install(window);
$(document).ready(function() {
paper.setup("canvas");
Game.ship = new Ship(view.center, 1) // Essentially calls new Raster("imgid"); and positions it
view.draw();
});
何らかの理由で、このコードは空白のキャンバスになります。奇妙なのはnew Ship(...)
、数秒後に開発コンソールを呼び出すと、キャンバス上でラスターが正常にレンダリングされることです。また、 の値を見ると、サイズが 32, 32 の canvas 要素が表示されることにも気付きましたGame.ship.elem.__canvas
。そのような canvas は DOM に存在しません。
これはタイミングと関係があると思いますが、 setTimeout を使用して数秒後にラスターを作成するという非常に厄介なアプローチを除いて、それを機能させるために何をしなければならないかを理解できないよう$(document).ready()
です呼ばれた。
ここで何が起こっているのか、または私を正しい方向に導くことができる何かについて誰か考えがありますか?