【发布时间】:2018-02-21 19:58:36
【问题描述】:
我目前正在开发一个在 javascript 中使用精灵的游戏,我想添加一个事件侦听器,在游戏开始之前检查精灵图像是否已加载。我正在使用面向对象的编程,我遇到了一些问题......我将展示一个我想到的例子:
function Sprite() {
this.img = new Image();
// either this:
this.img.onload = function() {
}
// or this:
this.img.addEventListener("load", function() {
// Either way, when it loads, then it could proceed with the move or draw methods.
// I don't even know how to do this yet...
});
this.img.src = "res/image.png";
this.draw = function() {
context.drawImage(//with all the parameters);
}
this.move = function() {
// code that makes the sprites move
}
}
无论哪种方式,以及我尝试过的任何方式,它都无法正常工作而不会显示任何错误。它只是不显示精灵。有谁知道怎么回事?
【问题讨论】:
-
如果负载没有触发,错误事件会被触发吗?
-
什么意思?
-
this.img.onerror = function(){} -
这并没有真正做任何事情。或者至少我不知道它应该做什么......对不起
-
您是否在 onerror 中添加了日志记录以查看它是否被触发......这只是基本的想法......学习使用您的控制台和网络面板来查看请求是否通过出来获取图像。
标签: javascript oop methods sprite