私はKinetic.jsで次のコードを持っています:
function pacmanMove(x, y , duration, bate, color) {
var tween = new Kinetic.Tween({
node: group,
duration: duration,
x: x,
y: y,
onFinish: function() {
changeColor(color);
window[bate].remove();
}
});
return tween;
}
var eat = [];
for(var i = 0; i < linkItemsLen; i++) {
eat.push(pacmanMove(linkItems[i][2], 65, 1, linkItems[i][0], linkItems[i][4]));
window[linkItems[i][0]].on('mouseover', function() {
this.tween = eat[i];
this.tween.play();
});
}
オンザフライで作成されたトゥイーンをマウスオーバー イベントに渡そうとしていますが、トゥイーンは常に定義されていないため、イベントがトリガーされるとエラー メッセージが表示されるのはTypeError: 'undefined' is not an object (evaluating 'this.tween.play')
なぜですか? どうすればこれを修正できますか?