我正在尝试在HTML5画布上绘制一个红色矩形。这是我的HTML。

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset=utf-8>
    <title>My Canvas Experiment</title>
    <link rel="stylesheet" type="text/css" href="main.css" />
    <script src="plotting.js"></script>
    <!--[if IE]>
      <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js">
      </script>
    <![endif]-->
  </head>
  <body>
    <canvas id="plot"></canvas>
  </body>
</html>


这是plotting.js:

document.onload = function() {
    var c = document.getElementById("plot");
    var ctx = c.getContext("2d");
    ctx.fillStyle("#f00");
    ctx.fillRect(0, 0, 175, 40);
}


这是main.css:

body { margin:100px; }

article, aside, figure, footer, header, hgroup, menu, nav, section {
    display:block;
}

#plot {
    width: 500px;
    height: 400px;
}


为什么页面空白? Chrome Web Developer控制台没有错误。

最佳答案

使用window.onload代替document.onload(保留@stewe的建议)。


DEMO

关于javascript - 为什么不能在HTML5 Canvas 上绘制矩形?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9930765/

10-09 17:59