我很难在画布中使用重绘功能。我有一个全局的圆圈阵列,我随机生成并在画布上绘制...这很好用。但是,在鼠标点击上我希望其中一个放大(在同一位置绘制一个更大的圆圈)。为此,我更新了圆的一个成员,并更改其绘制功能。这也很好。当我想在鼠标点击上redraw()
时会出现问题。
function redraw() {
canvas.width = canvas.width; // reset canvas
for (var i in currentCircles) {
currentCircles[i].draw(context);
}
}
我是HTML5 / Javascript的新手,所以这可能是一个愚蠢的错误,但我调试了一下,发现代码确实进入了for循环并且具有正确的全局数组currentCircles长度(带有绘制的圆的对象)方法),但只是在currentCircles[i].draw(context);
基本上,我只是想更新一个绘制对象的一个成员并重新绘制它,以便它由于更新的成员而变大。