Javascript 非常基本的EaseLJS问题。我能';我不能让它工作
我对javascript和EaseLJS非常陌生,但我不明白这是怎么回事。 我有一个html文件:Javascript 非常基本的EaseLJS问题。我能';我不能让它工作,javascript,html,canvas,easeljs,stage,Javascript,Html,Canvas,Easeljs,Stage,我对javascript和EaseLJS非常陌生,但我不明白这是怎么回事。 我有一个html文件: <!DOCTYPE html> <html> <head> <script src="easeljs-0.7.1.min.js" type="text/javascript"></script> <script src="game.s.js" type="text/javascript"></scr
<!DOCTYPE html>
<html>
<head>
<script src="easeljs-0.7.1.min.js" type="text/javascript"></script>
<script src="game.s.js" type="text/javascript"></script>
<script>
function init() {
renderLevel();
}
</script>
</head>
<body onLoad="init();">
<canvas id="canvas" width="500" height="300">
alternate content
</canvas>
</body>
</html>
我刚才放在那里检查值的警报。stage.canvas正确地指向HTML5Canvas元素,但图像不会显示
我在这里遗漏了什么?:)
谢谢问题是,您在加载图像之前将图像添加到舞台,然后还没有图像。在将图像添加到后台之前,需要等待图像加载 您可以使用
preload()来实现这一点代码>函数在调用init()之前加载所有图像代码>或renderLevel()代码>。以下是此函数的外观:
function preload(images, callback) {
var count = images.length;
if (count === 0) {
callback();
}
var loaded = 0;
$(images).each(function () {
$('<img>').attr('src', this).load(function () {
loaded++;
if (loaded === count) {
callback();
}
});
});
}
function preload(images, callback) {
var count = images.length;
if (count === 0) {
callback();
}
var loaded = 0;
$(images).each(function () {
$('<img>').attr('src', this).load(function () {
loaded++;
if (loaded === count) {
callback();
}
});
});
}
preload(["image1.png", "image2.png"], init());