我想在HTML5画布中绘制一个圆并移动它。
我编写了以下JavaScript代码:
var a = 0;
function draw() {
var c = document.getElementById("game");
var ctx = c.getContext("2d");
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.beginPath();
ctx.arc(45+a, 45, 40, 0, 2 * Math.PI);
ctx.stroke();
a++;
}
var t=setInterval(draw,1000);
<canvas id="game" width="640" height="480"></canvas>
当我尝试执行它时,控制台显示以下错误:
TypeError: canvas.clearRect 不是一个函数
我该如何解决这个问题?
谢谢。
ctx.clearRect
而不是canvas.clearRect
。 - rlemoncanvas
是未定义的,对吧? - Rayonvar c = document.getElementById("game");
和var ctx = c.getContext("2d");
放在函数外面,作为全局变量。此外,您可以在函数中使用c.width, c.height
而不是canvas.width, canvas.height
。 - enxaneta