我有帆布标签,我用它绘制在该线, 画布是一个正方形。 我用“空间”,记录两条线之间的空间。 我有canvasWidth和canvasHight记录画布大小,实际上,它们是相同的numnber .... 320

        var x=0;
        for (var i = 0; i < 5; i++) {
            x = parseInt(x + space);

            myCanvas.fillStyle = "rgb(200,0,0)";
            myCanvas.fillRect(x, 1, 1, canvasHeight);
            myCanvas.fillStyle = "rgb(0,200,0)";
            myCanvas.fillRect(1, x, canvasWidth, 1);

        }

我可以使用在画布上绘制所有的红色线, 但绿线只可以得出两个在画布上,其他的就不能出现, 我用的try {} catch和它是没有误差消失。

有帮助吗?

解决方案

您使用的是什么浏览器?

这个问题似乎并不在你的代码所展示的,因为它工作正常,我。

下面是我的示例HTML:

<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" height="320" width="320" />

<script language="javascript">
var myCanvas = document.getElementById('myCanvas').getContext('2d');
var space = 10;
var x=0;
var canvasHeight = 320;
var canvasWidth = 320;
for (var i = 0; i < 5; i++) {
    x = parseInt(x + space);

    myCanvas.fillStyle = "rgb(200,0,0)";
    myCanvas.fillRect(x, 1, 1, canvasHeight);
    myCanvas.fillStyle = "rgb(0,200,0)";
    myCanvas.fillRect(1, x, canvasWidth, 1);

}
</script>

</body>
</html>

其他提示

为什么使用parseInt函数,是你的空间变量字符串类型?如果没有,尝试除去parseInt函数。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top