var不会重新定义自己

时间:2017-03-27 03:18:03

标签: javascript jquery variables

我正在使用HTML,CSS,jQuery和JS制作2人网页游戏。我的游戏工作方式是它的抽动方式,除非桌子已满,你可以用自己的瓷砖替换之前由对手控制的瓷砖。问题是我无法获得代码来识别表已满。他是我的代码的一个小例子:

<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>

这是JS:

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!');
       });
     }
 });
})

我不知道为什么这不起作用。有帮助吗? 编辑: 哇,我没想到我会很快得到答案。为了更清楚,var fullTable应该向游戏表明表是否已满。一开始,它被设置为“不”。 (我可能会将其更改为使用布尔值),并且当点击所有图块时,它将被设置为“是”,但是,我无法让程序识别该表是充分。如果表格未满,则无法更改任何已单击的图块,但一旦表格已满,即可。 Jaromanda X,感谢您告诉我每次用户点击磁贴时都会添加.preclick或.justclick。我现在就解决这个问题。

编辑(2):哦,天哪,我感到愚蠢。我正在修复课程添加,并意识到蓝色不会将变量tile1preClick更改为“是”&#39;。我很确定我已经自己解决了这个问题...感谢您的回答。

0 个答案:

没有答案