ここに問題があります:
私はキャンバスを持っており、クリックすることでキャンバスに「ポップ」できる4つの画像(将来的にはさらに多くなりますが、テスト用に4つ...とにかく問題ありません)があります。
各画像は、キャンバスに複数回表示できます。
これまでのところ、ポップは正常に機能しており、画像はドラッグ可能です...しかし、キャンバスに追加する最後の画像しか選択できないため、サイズ変更やzIndex関数を追加することはできません。
理想的な世界では、画像をクリック/ドラッグしてキャンバスの上に置き、ちょっと「選択」して、サイズ変更機能を画像に接続できるようにしたいと思います。
しかし、画像の配列では、ドラッグされたアイテムを適切に識別できず、セレクターを使用できません(または使用できません)。
ありがとうございました。
編集:いくつかのコード
var imgCpt = 0;
var image = [];
function addDetails(img) {
imgCpt++;
var imageObj = new Image();
imageObj.onload = function() {
image[imgCpt] = new Kinetic.Image({
x: 0,
y: 0,
image: imageObj,
draggable: true,
id:image[imgCpt]
});
image[imgCpt].setX((stage.getWidth()/2) - (image[imgCpt].getWidth()/2));
image[imgCpt].setY((stage.getHeight()/2) - (image[imgCpt].getHeight()/2));
eval(image[imgCpt]).on('click', function() {
alert(eval(imgCpt));
});
layer.add(image[imgCpt]);
stage.add(layer);
};
imageObj.src = 'uploads/'+img;
}
私はすでにさまざまな解決策を試しました:複数のレイヤー、画像の代わりにそれに作用する、画像の代わりに画像で満たされた形状を操作する、しかしそれは常に同じ問題です:関係する要素のIDを取得できません(最後の挿入要素のIDの代わりに)
このバージョンは配列で動作しますが、私はyersterdayでeval()を使用してイメージIDを作成しようとしました。それ以上の成功なしに。
ご協力ありがとうございました
EDIT²:申し訳ありませんが、純粋なKineticJS関連よりもJS関連だと思っていても、この点についてサポートをいただければ幸いです。ありがとうございました。