2017-02-24 45 views
-1

我使用了一個udemy課程來製作一個簡單的pong遊戲。 我現在正在重新創建它作爲練習,我一直讓錯誤畫布爲空。任何幫助?我的Html畫布爲空。真的很煩人

<html> 
<canvas id="gamecanvas" width="600" height="800"></canvas> 
<script> 
var canvas = null; 
var Context = null; 

window.onload = function(){ 

canvas.document.getElementById("gamecanvas"); 
Context.canvas.getContext("2d"); 
drawEverything(); 
} 

function drawEverything() { 
Context.fillStyle = "black"; 
Context.fillRect(0,0,canvas.width,canvas.height); 

Context.fillStyle = "white"; 
Context.fillRect(0,360,20,80); 


Context.fillStyle = "white"; 
Context.fillRect(580,360,20,80); 


Context.fillStyle = "green"; 
context.beginpath(); 
context.arc(0,0,10,10,Math.PI*2,true); 
context.fill(); 


} 
+0

也許'canvas = document.getElementById(「gamecanvas」)'onload'函數? –

+1

你正在做'canvas.document',所以基本上試圖訪問'null'對象的屬性'document' –

+3

你還會遇到問題,因爲'context!= Context'。 –

回答

1

那是因爲你將它設置爲null!更改

canvas.document.getElementById("gamecanvas"); 

canvas = document.getElementById("gamecanvas"); 

否則,你永遠不設置畫布。

+1

這不是唯一的問題。 JavaScript區分大小寫。 – Andreas

0

你應該這樣做。

canvas = document.getElementById("gamecanvas"); 
Context = canvas.getContext("2d"); 
0

您將canvas設置爲null,當然它將爲null。這應該有所幫助。

canvas = document.getElementById("gamecanvas") 
context = canvas.getContext("2d");