即时制作应用程序,但我遇到了问题。当我点击一个按钮时,我需要在画布上添加新点(图像)。下面是一个代码:使用动力学在画布上添加更多图像
var ID = 0;
var points = [];
function addPoint(){
points.push({id: ID, posX: 0, posY: 0, url: "img/point.png"});
ID++;
showPoints();
}
function showPoints(){
var img = new Array();
var point = new Array();
var stage = new Kinetic.Stage({
container: 'cvsCroatia',
width: 574,
height: 508
});
var layer = new Kinetic.Layer();
for(var j=0; j < ID; j++){
img[j] = new Image();
img[j].src = 'img/point.png';
img[j].onload = (function(){
point[j] = new Kinetic.Image({
x: points[j].posX,
y: points[j].posY,
image: img[j],
width: 13,
height: 13,
name: img[j],
draggable: true
});
});
layer.add(point[j]);
}
stage.add(layer);
}
但我得到了一个错误:
Uncaught TypeError: Cannot set property 'index' of undefined (kinetic-v4.4.0.min.js:29)
你有什么想法,有什么不好? Thx寻求答案。艾伦。对于答案
你实际上应该让一切都在这个函数全局范围 – SoluableNonagon 2013-04-05 13:21:49