2017-05-03 5 views
1

私はビンゴのゲームを作成し、私は次の問題を見ることができます:私がゲームを開始すると、テーブルは0から9,10から19,20から29などに行くjavascriptビンゴゲームテーブルの問題

は、私はそれが11私は今しばらく見つめてされているとそれを把握するカント21など

30、20、1から10まで行く必要があります。

<html> 
 
<head> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 
    <style type="text/css"> 
 
div  { 
 
      text-align: center; 
 
     } 
 

 
     .bigNumberDisplay { 
 
      font-size: 10em; 
 
     } 
 

 
     .numbersTable { 
 
      font-size: 3em; 
 
     } 
 

 
     table { 
 
      margin-left: auto; 
 
      margin-right: auto; 
 
     } 
 

 
     table, tr, td { 
 
      border-collapse: collapse; 
 
      border: solid 1px #999; 
 
     } 
 

 
     td { 
 
      min-width: 200px; 
 
      color: #fff; 
 
      text-align: center; 
 
      font-size: 60px; 
 
      font-weight: bolder; 
 
     } 
 

 
     td.selected { 
 
      color: #f00; 
 
      background-color: #A3B86C; 
 
      border: solid 1px #000000; 
 
     } 
 
     #btnGenerate{ 
 
      width: 270px; 
 
      height: 60px; 
 
      color: red; 
 
      background-position: center; 
 
      border: none; 
 
      outline: none; 
 
      font-size: 30px; 
 
      font-weight: bolder; 
 
      text-align: right; 
 
      white-space: normal; 
 

 
     } 
 

 
</style> 
 
    <script> 
 
$(function() { 
 
    var bingo = { 
 
     selectedNumbers: [], 
 
     generateRandom: function() { 
 
      var min = 1; 
 
      var max = 89; 
 
      var random = Math.floor(Math.random() * (max - min + 1)) + min; 
 
      return random; 
 
     }, 
 
     generateNextRandom: function() { 
 
      if (bingo.selectedNumbers.length > 88) { 
 
       alert("Game over!"); 
 
       return 0; 
 
      } 
 
      var random = bingo.generateRandom(); 
 
      while ($.inArray(random, bingo.selectedNumbers) > -1) { 
 
       random = bingo.generateRandom(); 
 
      } 
 
      bingo.selectedNumbers.push(random); 
 
      return random; 
 
     } 
 
    }; 
 
    $('td').each(function() { 
 
     var concatClass = this.cellIndex + "" + this.parentNode.rowIndex; 
 
     var numberString = parseInt(concatClass, 10).toString(); 
 
     $(this).addClass("cell" + numberString).text(numberString); 
 
    }); 
 
    $('#btnGenerate').click(function() { 
 
     var random = bingo.generateNextRandom().toString(); 
 
     $('.bigNumberDisplay span').text(random); 
 
     $('td.cell' + random).addClass('selected'); 
 
    }); 
 
    window.onbeforeunload = function(e) { 
 
     e = e || window.event; 
 
     var returnString = 'Are you sure?'; 
 
     if (e) { 
 
      e.returnValue = returnString; 
 
     } 
 
     return returnString; 
 
    }; 
 
}); 
 
</script> 
 
</head> 
 
    <body> 
 
     <div class="container"> 
 
    <div> 
 
     <span>BingoDesk</span> 
 
    </div> 
 
    <div class="bigNumberDisplay"> 
 
     <span>0</span> 
 
    </div> 
 
    <div> 
 
     <p>Hit Spacebar or click below to generate a number!</p> 
 
     <audio id="sound1" src="chewbacca.mp3" preload="auto"></audio> 
 
     <input id="btnGenerate" type="button" autofocus value="" onclick="document.getElementById('sound1').play();"/> 
 
    </div> 
 

 
    <br/> 
 

 
    <div class="numbersTable"> 
 
     <table> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
       <td></td> 
 
      </tr> 
 
      <tr> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
       <td> </td> 
 
      </tr> 
 
     </table> 
 
    </div> 
 

 
    <br/> 
 

 
    
 
</div> 
 
</body> 
 
</html>

助けてください!私が助けを求めているのはグリッドなので、0-9になるのではなく、1から始まって10に向かいたいと思う。これはちょうど数字を呼び出す。アイデアはプレイヤーがカードをプリプリントしてそれぞれの番号は無作為に生成され、カード上でマークされます。グリッドにはすでに呼び出された数値が含まれていますが、カードが表形式であるため、最初の列は1〜10秒の列11〜20です。現在の表はこれを正確に表していません。これは利益のためのプロジェクトではありません。

答えて

0

問題は数値の取得方法です。

は交換してください:

var number = parseInt(concatClass, 10) + 1; 
$(this).addClass("cell" + number).text(number); 

お知らせ+ 1、及び(toStringは必要ありません)私は.toString()を取り除くこと:

var numberString = parseInt(concatClass, 10).toString(); 
$(this).addClass("cell" + numberString).text(numberString); 

で。また
var max = 90;

例:

$(function() { 
 
    var bingo = { 
 
    selectedNumbers: [], 
 
    generateRandom: function() { 
 
     var min = 1; 
 
     var max = 90; 
 
     var random = Math.floor(Math.random() * (max - min + 1)) + min; 
 
     return random; 
 
    }, 
 
    generateNextRandom: function() { 
 
     if (bingo.selectedNumbers.length > 88) { 
 
     alert("Game over!"); 
 
     return 0; 
 
     } 
 
     var random = bingo.generateRandom(); 
 
     while ($.inArray(random, bingo.selectedNumbers) > -1) { 
 
     random = bingo.generateRandom(); 
 
     } 
 
     bingo.selectedNumbers.push(random); 
 
     return random; 
 
    } 
 
    }; 
 

 
    $('td').each(function() { 
 
    var concatClass = this.cellIndex + "" + this.parentNode.rowIndex; 
 
    var number = parseInt(concatClass, 10) + 1; 
 
    $(this).addClass("cell" + number).text(number); 
 
    }); 
 

 
    $('#btnGenerate').click(function() { 
 
    var random = bingo.generateNextRandom().toString(); 
 
    $('.bigNumberDisplay span').text(random); 
 
    $('td.cell' + random).addClass('selected'); 
 
    }); 
 

 
    window.onbeforeunload = function(e) { 
 
    e = e || window.event; 
 
    var returnString = 'Are you sure?'; 
 
    if (e) { 
 
     e.returnValue = returnString; 
 
    } 
 
    return returnString; 
 
    }; 
 
});
div { 
 
    text-align: center; 
 
} 
 

 
.bigNumberDisplay { 
 
    font-size: 1em; 
 
} 
 

 
.numbersTable { 
 
    font-size: 1em; 
 
} 
 

 
table { 
 
    margin-left: auto; 
 
    margin-right: auto; 
 
} 
 

 
table, 
 
tr, 
 
td { 
 
    border-collapse: collapse; 
 
    border: solid 1px #999; 
 
} 
 

 
td { 
 
    min-width: 50px; 
 
    color: #fff; 
 
    text-align: center; 
 
    font-size: 20px; 
 
    font-weight: bolder; 
 
} 
 

 
td.selected { 
 
    color: #f00; 
 
    background-color: #A3B86C; 
 
    border: solid 1px #000000; 
 
} 
 

 
#btnGenerate { 
 
    width: 100px; 
 
    height: 20px; 
 
    color: red; 
 
    background-position: center; 
 
    border: none; 
 
    outline: none; 
 
    font-size: 20px; 
 
    font-weight: bolder; 
 
    text-align: right; 
 
    white-space: normal; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="container"> 
 
    <div> 
 
    <span>BingoDesk</span> 
 
    </div> 
 
    <div class="bigNumberDisplay"> 
 
    <span>0</span> 
 
    </div> 
 
    <div> 
 
    <p>Hit Spacebar or click below to generate a number!</p> 
 
    <audio id="sound1" src="chewbacca.mp3" preload="auto"></audio> 
 
    <input id="btnGenerate" type="button" autofocus value="" onclick="document.getElementById('sound1').play();" /> 
 
    </div> 
 
    <div class="numbersTable"> 
 
    <table> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
     <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> 
 
    </table> 
 
    </div> 
 
</div>