Я пытаюсь сделать игру Tic-Tac-Toe, и у меня возникают проблемы при изменении фонового изображения на изображение X или О. Я беру идентификатор ячейки <td>
с прослушиватель событий нажимает на мою ячейку <td>
.Новый дочерний элемент содержит родителя
Это создание таблицы со всеми идентифицированными ячейками и изображениями, включенными во все ячейки с разными идентификаторами. функция
function BuildTable(rows, cols) {
BuildDivJeu();
var table = document.createElement("TABLE");
table.id = "Table";
document.getElementById("Jeu").appendChild(table);
for (var row = 1; row <= rows; row++) {
var rangee = document.createElement("TR");
rangee.id = row;
document.getElementById("Table").appendChild(rangee);
for (var col = 1; col <= cols; col++) {
var cellule = document.createElement("TD");
var img = document.createElement("IMG");
cellule.id = "R" + row + "C" + col;
img.setAttribute("id", cellule.id);
img.setAttribute("src", "Images/VN.png");
img.setAttribute("alt", "VN")
cellule.appendChild(img);
document.getElementById(row).appendChild(cellule);
cellule.addEventListener("click", Jouer);
}
}
}
Это моя функция, которая изменяет изображения в ячейку в зависимости от щелчка ячейки.
function Jouer() {
var x = event.currentTarget
var id = x.id;
var imgx = document.getElementById(id);
var imgo = document.getElementById(id);
if (turn % 2 == 0) {
if (x.alt != "VN" | x.alt != "ON") {
if (imgx.hasAttribute("alt")) {
imgx.setAttribute("src", "Images/XN.png");
imgx.setAttribute("id", "XN");
imgx.setAttribute("alt", "XN");
}
x.appendChild(imgx);
}
turn++;
} else {
if (x.id != "VN" | x.id != "XN") {
if (imgo.hasAttribute("alt")) {
imgo.setAttribute("src", "Images/ON.png");
imgo.setAttribute("id", "ON");
imgo.setAttribute("alt", "ON");
}
x.appendChild(imgo);
}
turn++;
}
}
Когда я нажимаю на ячейке, которую я хочу поставить свою X или O он не работает с сообщением об ошибке в качестве названия этого горшка упоминания. Интересно, как я мог приступить к изменению изображения в ячейке с их новыми идентификаторами.
Я пытаюсь изменить изображение в оригинале
@MathieuLussier - вы можете изменить изображение, получив объект изображения на странице и просто изменив на нем свойство '.src'. Вам не нужно 'appendChild()' ничего. – jfriend00
Почему нисходящий? Я занялся этим вопросом, который трудно понять, когда никто больше не будет. Что неверно в этом ответе, что он заслуживает понижения? – jfriend00
Смежные вопросы