2009-08-05 78 views
0

我有一個畫布標籤,我用它畫線, 畫布是方形的。 我使用「空格」來記錄兩行之間的空格。 我有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,並且沒有錯誤消失。

+0

我發現有一個問題,當Y軸是大於150將不顯示的元素...... – DNB5brims 2009-08-05 10:13:12

回答

1

你使用什麼瀏覽器?

該問題似乎並未出現在您顯示的代碼中,因爲它適用於我。

這是我的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> 
+0

我正在開發webOS .... – DNB5brims 2009-08-05 10:11:57

0

爲什麼你使用parseInt,你的空間變量是否有字符串類型?如果不是,請嘗試刪除parseInt。

+0

我刪除它,它仍然不能畫出所有的綠線。 – DNB5brims 2009-08-05 09:38:46