Tengo 9 divs diferentes en una matriz, cada uno adjunto a un forEach y un detector de eventos. Me pregunto cómo consolaría. registraría una cadena solo después de hacer clic en tres de los botones. Si esto lo ayuda a comprender mejor mi pregunta, estoy haciendo tres en raya y necesito una alerta cuando alguien gane al hacer clic en las áreas deseadas. ¡Gracias!
HTML
<div class="game-container"> <div class="cell" id="0"></div> <div class="cell" id="1"></div> <div class="cell" id="2"></div> <div class="cell"></div> <div class="cell"></div> <div class="cell"></div> <div class="cell"></div> <div class="cell"></div> <div class="cell"></div> </div> const cell = document.querySelectorAll('.cell'); player1 = 'X' player2 = 'O' let currentPlayer = player1 cell.forEach(element => { element.addEventListener('click', function (e) { if (currentPlayer === player1) { element.style.backgroundColor='red' currentPlayer = player2; } else { currentPlayer = player1; element.style.backgroundColor='Blue' } }) })Cree en un objeto que almacenará el estado del juego en una matriz de 3 x 3 y recibirá una notificación con cada clic. Después de eso, cambia su estado (agrega una celda en la que se hizo clic) y verificará si alguien gana. Si es así - registro
Debe crear un estado para casos ganadores en el juego y verificar si las celdas seleccionadas por el usuario coinciden con algo en un caso ganador... tal vez este repositorio sea útil para usted. https://github.com/AhmedMalekX/juego de tres en raya