2013-09-29 57 views
1

我在畫布上渲染東西時出現問題。它給了我以下錯誤:TypeError:CanvasRenderingContext2D.drawImage的參數1無法轉換爲HTMLImageElement,HTMLCanvasElement,HTMLVideoElement中的任何一個:參數1的CanvasRenderingContext2D.drawImage不能轉換爲HTMLImageElement,HTMLCanvasElement,HTMLVideoElement。 @文件:///home/alex/Desktop/Game/index.html:24在繪製時畫布HTML錯誤

var gameCanvas = document.getElementById("graphics"); 
var grafx = gameCanvas.getContext("2d"); 
var stele = new Object("../resources/sprites/enemy/enemyship1.png",500,500); 
GameLoop(); 

function GameLoop(){ 

grafx.clearRect(0,0,gameCanvas.width,gameCanvas.height); 
grafx.drawImage(stele.Sprite,stele.X,stele.Y); 


setTimeout(GameLoop,1000/60); 
} 

function SteleMiscatoare(img,x,y) { 
this.Sprite = new Image(); 
this.Sprite.src = img ; 
this.X = x; 
this.Y = y; 

} 

和HTML文件:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8" /> 
<title>UFO Space Atack</title> 
<link rel="stylesheet" style="text/css" href="data/stylesheet.css" /> 
</head> 
<body onkeydown="keyDown(e)" onkeyup="keyUp(e)"> 
<div class="container"> 
    <h1 class="title">UFO Space Atack</h1> 
</div> 
<div class="canvascontainer" align="center"> 
    <canvas id="graphics" width="950px" height="490" id="graphics"></canvas> 
</div> 

<script src="data/stele.js"></script> 

</body> 
</html> 

有人可以幫我解決這個問題?謝謝 !林beginer在JavaScript中......

回答

1
var stele = new Object("../resources/sprites/enemy/enemyship1.png",500,500); 

應該是:

var stele = new SteleMiscatoare("../resources/sprites/enemy/enemyship1.png",500,500); 
+0

工作。謝謝 ! –