我完美地编写了用edu-book写的代码。但是,它不起作用!
我认为window.addEventListener出现了问题。当我将代码修改为其他未使用addEventListener函数的代码时,js和html源代码可以很好地工作。我尝试更改浏览器(Chrome,资源管理器)更改计算机,但未更改操作系统。
而且诸如imgPlayer.addEventListener也不起作用。我不知道为什么addEventListener在浏览器上不起作用。
JS:
window.addEventListener("load",drawScreen,false);
var imgBackground = new Image();
imgBackground.src = "img/background.jpg";
imgBackground.addEventListener("load",drawScreen,false);
var imgPlayer = new Image();
imgPlayer.src = "img/player.jpg";
imgPlayer.addEventListener("load",drawScreen,false);
function drawScreen()
{
var theCanvas = document.getElementsById("GameCanvas");
var Context = theCanvas.getContext("2d");
Context.fillStyle = "#000000";
Context.fillRect(0,0,800,600);
Context.drawImage(imgBackground,0,0);
Context.drawImage(imgPlayer,350,250);
}
HTML:
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8" />
<title> 총알 피하기 </title>
<script src = "DodgeGame.js"></script>
</head>
<body>
<div style="position: absolute; top: 25px; left: 25px">
<canvas id="GameCanvas" width="800" height="600">
지원 ㄴㄴ해
</canvas>
</div>
</body>
</html>
答案 0 :(得分:0)
我认为您需要内联声明处理程序函数
window.addEventListener("load", function(event) {
console.log("Tutte le risorse hanno terminato il caricamento!");
});
答案 1 :(得分:0)
您遇到的问题在此行中:
var theCanvas = document.getElementsById("GameCanvas");
方法getElementsById()
不存在-应该为getElementById()
。用以下代码替换上面的代码行:
var theCanvas = document.getElementById("GameCanvas");
您的代码应该可以工作。