通过 JavaScript 将类添加到 HTML 元素时遇到问题

问题描述 投票:0回答:1

我在井字游戏中通过 JavaScript 将类添加到 HTML 元素时遇到问题。

const cellElements = document.querySelectorAll("[data-cell]");

let isCircleTurn;

const handleClick = (e) => {
  //Put mark(X or Circle)
  const cell = e.target;
  const currentClass = circleTurn ? "circle" : "x";
  cell.classList.add(currentClass);
};

cellElements.forEach((cell) => {
  cell.addEventListener("click", handleClick, {
    once: true
  });
});
<div class="table circle">
  <div class="cell x" data-cell></div>
  <div class="cell circle" data-cell></div>
  <div class="cell" data-cell></div>
  <div class="cell" data-cell></div>
  <div class="cell" data-cell></div>
  <div class="cell" data-cell></div>
  <div class="cell" data-cell></div>
  <div class="cell" data-cell></div>
  <div class="cell" data-cell></div>
</div>your text

我正在创建一个井字游戏,我想通过类添加 X 和 O,但是,我的 JavaScript 代码没有更改类。我已经通过ChatGPT寻找代码的修正,但无法解决。

javascript css tic-tac-toe
1个回答
-1
投票

看起来你的 JavaScript 代码中有一个小错误。在您的 handleClick 函数中,您使用了一个变量 isCircleTurn,但您没有在任何地方定义它。相反,您应该使用您之前定义的变量 circleTurn。

这是您的 handleClick 函数的更正代码

此外,您可能还想在 handleClick 函数末尾切换 isCircleTurn 的值,以在 X 和 O 玩家之间切换回合。

© www.soinside.com 2019 - 2024. All rights reserved.