我正在创建井字游戏的 chrome 扩展。但是,我的 html 代码具有内联事件处理程序,由于内容安全性,这些事件处理程序是不允许的。我需要弄清楚如何将这些事件处理程序传输到 javascript 页面。
这是 HTML 页面,内联事件处理程序位于按钮中,它们调用函数 gamestart:
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link href="game.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="singleplayer.js"></script>
</head>
<body>
<center><u><h1>Single Player Mode</h1></u>
<table> <tr><td>
<button style="background-color:lightblue ; color: black" id="0" onclick = "gamestart(0)">
</button></td>
<td>
<button style="background-color:lightblue ; color: black" id="1" onclick = "gamestart(1)">
</button>
</td><td>
<button style="background-color:lightblue ; color: black" id="2" onclick = "gamestart(2)">
</button>
</td></tr>
<tr><td>
<button style="background-color:lightblue ; color: black" id="3" onclick = "gamestart(3)">
</button>
</td><td>
<button style="background-color:lightblue ; color: black" id="4" onclick = "gamestart(4)">
</button>
</td><td>
<button style="background-color:lightblue ; color: black" id="5" onclick = "gamestart(5)">
</button>
</td></tr><tr><td>
<button style="background-color:lightblue ; color: black" id="6" onclick = "gamestart(6)">
</button>
</td><td>
<button style="background-color:lightblue ; color: black" id="7" onclick = "gamestart(7)">
</button>
</td><td>
<button style="background-color:lightblue ; color: black" id="8" onclick = "gamestart(8)">
</button>
</td></tr></table></center>
</body>
</html>
在 javascript 表单上,这是使用事件处理程序调用的函数:
var counter=0;
function gamestart(id){
console.log(id);
counter=counter+2
if(counter%1==0){
document.getElementById(id).innerHTML = "X";
checkX("X");
stopbutton("X");
setTimeout('player2()',500);
checktie();
}
}