<!DOCTYPE html> <html lang="ja"> <head> <title>心のタイマー</title> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <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> <form method="POST" action="./game.rb"></form> <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>