У меня возникают проблемы с настройкой функции перерисовки для работы на холсте. У меня есть глобальный массив кругов, которые я случайно генерирую и рисую на холсте ... это отлично работает. Однако при щелчке мышью я хочу, чтобы один из них увеличился (нарисуйте больший круг в том же месте). Для этого я обновляю члена круга и меняю его функцию рисования. Это тоже отлично работает. Проблема возникает, когда я хочу 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);
По сути, я просто хочу обновить один элемент нарисованного объекта и перерисовать его так, чтобы он был большим из-за обновленного члена.