html canvas clearRect()不起作用

时间:2015-03-29 15:45:41

标签: javascript animation canvas

我研究html画布并尝试制作简单的动画。 我想让矩形向右移动。 你可以在这里查看我的代码。 http://codepen.io/inkluter/pen/GgeQqj

var x = 0, y = 0, w = 200, h = 100;

    function draw() {
       c.clearRect(0, 0, c.width, c.height);

       x++;
       c.beginPath();
       c.strokeRect(x, y, w, h);
       c.closePath();

       requestAnimationFrame(draw); 
    };

问题是clearRect()函数似乎无法正常工作。仍在画布上显示的旧矩形。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

'宽度'和'高度属性在canvas元素中定义,而不是在上下文中定义。写c.clearRect(0,0,canvas.width,canvas.height)代替。