図形の配列を動的に作成することができ、それらはさまざまな座標にうまく配置されています。
ただし、そのループ内でイベントを割り当てようとすると、クリックの結果は常に同じになります。クリックイベントがまだ私のループの最後の反復を参照しているように。
私は何が間違っているのですか?ありがとう!
編集:実際には、隔離された環境でこの動作を再現しました:
var stage = new Kinetic.Stage({
container: 'container',
width: 1024,
height: 768
});
var layer = new Kinetic.Layer();
singleSegment=40;
for (var i = 0; i < 4; i++) {
depth=singleSegment+(singleSegment*i);
dotLabel = new Kinetic.Text({
x: depth,
y: depth,
text: "test"
});
dotLabel.on('click', function(evt){
console.log(this.x);
});
layer.add(dotLabel);
}
stage.add(layer);
これらの4つのラベルに異なるイベントを追加するにはどうすればよいですか?