Javascript var won';不要重新定义自己
我正在使用HTML、CSS、jQuery和JS制作一个两人网络游戏。我的游戏是tic tac toe的,除非桌子满了,否则你可以用你自己的牌替换以前由对手控制的牌。问题是我无法让代码识别表已满。他是我代码的一个小例子:Javascript var won';不要重新定义自己,javascript,jquery,variables,Javascript,Jquery,Variables,我正在使用HTML、CSS、jQuery和JS制作一个两人网络游戏。我的游戏是tic tac toe的,除非桌子满了,否则你可以用你自己的牌替换以前由对手控制的牌。问题是我无法让代码识别表已满。他是我代码的一个小例子: <tr> <td class="left" ID="one1"> <div class="playerclick" ID="red11"></div> <div class="playercli
<tr>
<td class="left" ID="one1">
<div class="playerclick" ID="red11"></div>
<div class="playerclick" ID="blue11"></div>
</td>
<td ID="one2">
<div class="playerclick" ID="red12"></div>
<div class="playerclick" ID="blue12"></div>
</td>
<td ID="one3">
<div class="playerclick" ID="red13"></div>
<div class="playerclick" ID="blue13"></div>
</td>
我不知道为什么这不起作用。有什么帮助吗?
编辑:
哇,我没想到我能这么快得到答案。更清楚地说,var fullTable应该向游戏指示该表是否已满。开始时,它被设置为“否”(我可能会将其更改为使用布尔值),当单击所有平铺时,它将被设置为“是”,但是,我无法让程序识别表已满。如果表未满,则无法更改任何已单击的磁贴,但一旦表满,就可以更改。
Jaromanda X,谢谢你告诉我,每次用户单击互动程序时,它都会添加.preclick或.justclick。我现在就把它修好
编辑(2):哦,天哪,我觉得自己很笨。我正在修改添加的类,并意识到blue不会将变量tile1preClick更改为“yes”。我很确定我已经自己解决了这个问题。。。谢谢你的回答。哪个
var
不会重新定义自己
(不管是什么意思)“是”
和“否”
?您可能对()的概念感兴趣。$('#one1')。单击(function(){$('#one1')。单击(function(){
)-每次您用id=one1
单击单个互动程序时-您都会向其添加另一个单击处理程序-这是您想要的吗?
var turn = 'red';
var fullTable = 'no';
var redLines = 0;
var blueLines = 0;
var tile1 = 'noclick';
var tile1preClick = 'no';
var tile1justClick = 'no';
var tile2 = 'noclick';
var tile2preClick = 'no';
var tile2justClick = 'no';
var tile3 = 'noclick';
var tile3preClick = 'no';
var tile3justClick = 'no';
var folderIf = 'folder';
$(document).ready(function() {
$('#one1').click(function() {
$('#one1').click(function() {
if (fullTable === 'no')
{
if (tile1 === 'noclick')
{
if (turn === 'red' && tile1preClick === 'no')
{
tile1 = 'red';
$('#red11').css('opacity', '1');
$('#one1').css('background', 'white');
$('#one1').addClass('preclick');
tile1preClick = 'yes';
turn = 'blue';
}
if (turn === 'blue' && tile1preClick === 'no')
{
tile1 = 'blue';
$('#blue11').css('opacity', '1');
$('#one1').css('background', 'white');
$('#one1').addClass('preclick');
turn = 'red';
}
}
$('.preclick').click(function(){
if (fullTable === 'no')
{
if (tile1preClick === 'yes' && tile2preClick === 'yes' && tile3preClick === 'yes')
{
$('.preclick').removeClass('preclick');
fullTable = 'yes';
}
else {
confirm('You can\'t claim this tile yet!');
}
}
});
}
if (fullTable === 'yes')
{
if (tile1 === 'blue' && tile1justClick === 'no')
{
if (turn === 'red')
{
tile1 = 'red';
$('#blue11').css('opacity', '0');
$('#blue11').css('background', 'initial');
$('#blue11').hide();
$('#red11').show();
$('#red11').css('background', '#FF0000');
$('#red11').css('opacity', '1');
$('#one1').css('background', 'white');
if (folderIf === 'folder')
{
$('#one1').removeClass('justclick');
$('#one2').removeClass('justclick');
$('#one3').removeClass('justclick');
}
$('#one1').addClass('justclick');
if (folderIf === 'folder')
{
tile1justClick = 'yes';
tile2justClick = 'no';
tile3justClick = 'no';
}
turn = 'blue';
}
}
if (tile1 === 'red' && tile1justClick === 'no')
{
if (turn === 'blue')
{
tile1 = 'blue';
$('#red11').css('opacity', '0');
$('#red11').css('background', 'initial');
$('#red11').hide();
$('#blue11').show();
$('#blue11').css('background', 'blue');
$('#blue11').css('opacity', '1');
$('#one1').css('background', 'white');
if (folderIf === 'folder')
{
$('#one1').removeClass('justclick');
$('#one2').removeClass('justclick');
$('#one3').removeClass('justclick');
}
$('#one1').addClass('justclick');
if (folderIf === 'folder')
{
tile1justClick = 'yes';
tile2justClick = 'no';
tile3justClick = 'no';
}
turn = 'red';
}
}
$('.justclick').click(function() {
confirm('You can\'t claim that tile yet!');
});
}
});
})