我过去创建了一个井字游戏。布局是使用 html 制作的,当点击井字游戏中的一个方块时,它会调用一个单独的 javascript 表单中的函数来运行游戏。它工作得很好,所以我决定尝试让这个游戏成为一个 chrome 扩展。但是,当我加载扩展程序时,布局显示正常,但是当单击方块时,它们不会启动游戏。我认为该页面未正确加载 javascript 页面。这是 popup.html 的代码:
html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link href="game.css" rel="stylesheet" type="text/css" />
</head>
<body>
<center><u><h1>Single Player Mode</h1></u>
<table>
<tr>
<td>
<button class="highlight" id="0"></button>
</td>
<td>
<button class="highlight" id="1"></button>
</td>
<td>
<button class="highlight" id="2"></button>
</td>
</tr>
<tr>
<td>
<button class="highlight" id="3"></button>
</td>
<td>
<button class="highlight" id="4"></button>
</td>
<td>
<button class="highlight" id="5"></button>
</td>
</tr>
<tr>
<td>
<button class="highlight" id="6"></button>
</td>
<td>
<button class="highlight" id="7"></button>
</td>
<td>
<button class="highlight" id="8"></button>
</td>
</tr>
</table>
</center>
<script type="text/javascript" src="singleplayer.js"></script>
</body>
</html>
javascript 页面是独立的,但运行良好,并且与 html 页面和 manifest.json 位于同一文件夹中。我只需要弄清楚为什么这个页面无法在 chrome 扩展中加载 javascript 工作表(称为 singleplayer.js),即使它在浏览器中运行时工作正常?还有一件事让我感到困惑的是,当我将它作为 chrome 扩展运行时,html 页面能够加载 CSS 表(game.css),那么为什么它可以加载 css 而不是 html?
编辑(功能游戏开始):
var tally=0;
function gamestart(id){
console.log(id);
tally=tally+2
if(tally%1==0){
document.getElementById(id).innerHTML = "X";
checkX("X");
stopbutton("X");
setTimeout('player2()',500);
checktie();
}
}
函数 gamestart 只是用来调用运行游戏的其他函数。