【发布时间】:2017-09-07 19:51:53
【问题描述】:
当我调用 move() 时,“y”变量已更改,但框仍呈现在同一位置。
var c = document.getElementById("can"); //my canvas id is "can"
var pen = c.getContext("2d");
var y = 200;
setInterval(render(y), 1000/30); //update 30 times per second
function move(dir){
y=y+dir;
}
function render(height) {
pen.beginPath();
pen.clearRect(0,0,888,500);
pen.beginPath();
pen.rect(30,height,50,50); //Draw the player
pen.fillStyle="green";
pen.fill();
}
【问题讨论】:
-
您需要将 'render' 作为函数引用传递,而不是在创建区间时调用它。
标签: javascript html canvas 2d-games