我有一个问题,我无法找到解决方案。我有一张我想在画布上多次绘制的图像。为此,我为每个我想绘制该图像的地方都有一个阵列。无法在画布上绘制相同图像的多个副本?
但是,JavaScript似乎应该画出一些东西使旧图像消失?为什么?
这里是使烦恼代码:
function drawPoints() {
var map = getMapArray();
var counter = 0;
for(var i = 1; i <= map.length; i++) {
for(var j = 1; j <= entry.length; j++) {
counter++;
for(var q = 0; q < points.length; q++) {
if(counter == points[q] && points[q] != 0) {
var point = new Image();
point.src="./img/point.png";
point.addEventListener("load", function(){canvas.drawImage(point, (j-1)*40, (i-1)*40)}, false);
}
}
}
}
}
逻辑完美的作品,并通过它循环,因为它应该。 它是eventlistener中的drawimage函数,它不会像我希望的那样打印图像。否则我不知道该怎么做?
如果你们有更好的解决方案比调用一个eventlistener所有的时间,请分享你的knowlegde。谢谢你的建议。
顺便说一句,正如我前面所说:功能运行正常,但一切都只是白色,可能是因为它删除旧的图像为新的和间隔太短,我看不到任何行动。
链接到现场脚本: http://picturds.com/pacman_serious/
直接绘制图像通过删除函数的声明来解决。 – Ms01 2012-01-13 02:47:46