大多数KineticJS类如Circle和Rect都可以正常工作。但是,在我的代码中尝试使用图像实现Sprite时,程序会失败。
以下是我收到的错误:
我认为这是因为它试图在绘制图像之前绘制精灵。因此,我努力避免这种情况。
var images = {}; // this empty object will hold later our loaded images
var imagesLoaded = false;
var sources =
{ // we define here the list of our assets to load
debug: '../images/red_player_1_standing.png',
sprite: '../images/redmenwalking_down.png'
};
var loadedImages = 0;
var numImages = 0;
for(var src in sources)
{
numImages++;
}
for(var src in sources)
{
images[src] = new Image();
images[src].onload = function()
{
if(++loadedImages >= numImages)
{
imagesLoaded = true;
var DEBUG = new Kinetic.Sprite(
{
x: 300,
y: 300,
image: images['debug']
})
layer.add(DEBUG);
}
};
images[src].src = sources[src];
}