我刚开始使用 Javascript 和 HTML5,所以我很可能犯了一些非常愚蠢的错误。事实上,我希望这就是全部,并且这是一个简单的解决方法。
这是我得到的输出:
(自己试试吧!)
我想要发生的只是在灰色矩形上绘制一个蓝色矩形,两种颜色都是它们自己的东西。我真的很困惑为什么这种混合是默认设置(在我的机器上使用 Chrome)。
这是最小的工作示例(再次,对于我的机器):
(html)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Simple Canvas Game</title>
</head>
<body>
<script src="js/game.js"></script>
</body>
</html>
(javascript,这是game.js)
//set up the canvas
var canvas = document.createElement("canvas");
var ctx = canvas.getContext("2d");
canvas.width = 512;
canvas.height = 480;
document.body.appendChild(canvas);
// Draw everything
var render = function () {
ctx.clearRect(50, 50, 100, 100);
ctx.fillStyle = "rgb(240, 240, 240)";
ctx.fillRect(0, 0, 100, 100);
ctx.strokeStyle="rgb(0, 0, 255)";
ctx.strokeRect(20,20,150,100);
}
setInterval(render, 10);