Kinetic を使用して必要なキャンバスを作成した後、別の方法で操作したいと考えています。Kinetic で作成されたキャンバスの ID がドキュメントでわかりません。getElementById を使用して取得したい。御時間ありがとうございます。
質問する
2340 次
2 に答える
1
残念ながら、Kinetic は Canvas を ID で定義しません。「getCanvas」関数を使用するとうまくいくかもしれませんが、特定のレイヤーから呼び出す必要があります。私にとっての最善の解決策は、div コンテナーの ID を使用し、「getElementsByTagName」を呼び出して Canvas 要素に到達することです。ただし、通常は Canvas が 1 つしかないため、次のようにして取得できます。
console.log(document.getElementsByTagName('canvas')[0]);
唯一の問題は、Kinetic がレイヤーごとに個別の Canvas 要素を作成することです。そのため、プロジェクトで 1 つのレイヤーのみを使用するか、すべてをブラウズする必要があります。
var canvases = document.getElementsByTagName('canvas');
for (var i = 0; i < canvases.length; i++) {
console.log(canvases[i]);
}
于 2013-04-02T15:50:15.177 に答える
0
使用するとgetCanvas()
うまくいきますか?(キネティックのドキュメントには、「レイヤー キャンバスを取得する」ために使用されると書かれているだけです)
さらに、同じ考えかどうかはわかりませんが、この質問を確認してください。
于 2013-01-23T21:37:39.307 に答える