Newer
Older
kp2 / game.html
<!DOCTYPE html>
<html lang="ja">
 
<head>
  <title>心のタイマー</title>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  
<form method="POST" action="./game.rb"></form>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" type="text/css" href="game.css">
  <style>
    .hidden {
      display: none; /* 要素を非表示にする */
    }
  </style>
</head>

<body>
  <h1 style="text-align: center;">心のタイマーと電子タイマーでJAAST TIME!!!</h1>
  <h3 style="text-align: center;">ルール説明!!</h3>
  <ul style="text-align: center;">
    <p>時間を5秒ぴったりに当てよう!!</p>
    <p>タイマーは表示されないので感覚で押そう!!</p>
    <p>STARTとSTOPは自分で押してね!!</p>
  </ul>
 
  <div style="text-align: center;">
    <h2><div class="timeCount hidden">00:00:000</div></h2>
    <button class="start" onclick="startTimer()">スタート</button>
    <button class="stop" onclick="stopTimer()" disabled>ストップ</button>
    
    <input type="button" value="結果" onclick="toggleTimerVisibility()">
    <p id="output_sample"></p>
  </div>
 
  <script>
    var timer; // タイマー変数の初期化
 
    function startTimer() {
      var startTime = Date.now(); // 現在時刻を取得
      timer = setInterval(function() {
        var currentTime = Date.now() - startTime; // 経過時間を計算
        var minutes = Math.floor(currentTime / 60000); // 分を計算
        var seconds = Math.floor((currentTime % 60000) / 1000); // 秒を計算
        var milliseconds = (currentTime % 1000).toString().slice(0, 3); // ミリ秒を計算
 
        // 時間を2桁表示に整形して表示
        document.querySelector('.timeCount').textContent = 
          ('0' + minutes).slice(-2) + ':' + ('0' + seconds).slice(-2) + ':' + ('00' + milliseconds).slice(-3);
      }, 1); // 1ミリ秒ごとに更新
      document.querySelector('.stop').disabled = false; // ストップボタンを有効化
    }
 
    function stopTimer() {
      clearInterval(timer); // タイマー停止
      document.querySelector('.stop').disabled = true; // ストップボタンを無効化
    }
 
    function resetTimer() {
      clearInterval(timer); // タイマー停止
      document.querySelector('.timeCount').textContent = '00:00:000'; // タイマーをリセット
      document.querySelector('.stop').disabled = true; // ストップボタンを無効化
    }
    
    function toggleTimerVisibility() {
      var timeCount = document.querySelector('.timeCount');
      if (timeCount.classList.contains('hidden')) {
        timeCount.classList.remove('hidden'); // 要素を表示する
      } else {
        timeCount.classList.add('hidden'); // 要素を非表示にする
      }
    }
  </script>
</body>
 
</html>