我正在制作一个名为Diplomacy的旧策略游戏的基于浏览器的克隆.这是我到目前为止所得到的:
<html>
<head>
<title>Diplomacy</title>
<script type="text/javascript" src="game.js" />
</head>
<body>
<canvas id="canvas" width="750" height="750" style="border: 3px solid black; background:url('DiplomacyMap.png');">
Your browser does not support Canvas.
</canvas>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
它在浏览器中看起来像什么?一个空白页面.但是,如果我删除头部(game.js)中的外部JS文件的链接,它显示没有问题.这似乎与JS文件的内容没有关系,因为即使我删除它们或将它们全部注释掉,问题仍然存在.这似乎只与元素的存在有关.
如果我用<script src="file.js">嵌入式替换元素<script> ...code... </script>,页面工作正常.
发生什么了?
第2部分:
<script type="text/javascript">
colorProvince(PARIS, FRANCE);
</script>
Run Code Online (Sandbox Code Playgroud)
虽然colorProvince函数和PARIS和FRANCE常量都是在game.js中定义的,但是这个函数没有被调用(由colorProvince函数中的简单alert()验证).这也没有做任何事情:
<script type="text/javascript">
alert(colorProvince);
</script>
Run Code Online (Sandbox Code Playgroud)
<script type="text/javascript" src="game.js" />
Run Code Online (Sandbox Code Playgroud)
需要是
<script type="text/javascript" src="game.js"></script>
Run Code Online (Sandbox Code Playgroud)
并且在game.js中有一个额外的分号colorProvince().用这个替换它:
function colorProvince(province, nation){
alert(5);
for (var i = 0; i < province.getRectangles().length; i++)
{
//colorRect(rect, "red");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1605 次 |
| 最近记录: |