169 похожих чатов

Здравствуйте возник вопрос по реализация tic tac toe когда

побеждает один из игроков как сделать так чтобы после на пустую клетку нельзя было нажать и чтото вводить?
let cells = document.querySelectorAll('.pixel');
let btn = document.querySelector('button')

start(cells)

function start(cells) {
let i = 0;

for (let cell of cells) {
cell.addEventListener('click', function step() {

this.innerHTML = ['X', 'O'][i % 2];
this.removeEventListener('click', step);

console.log(cell)
i++;

if (isVictory(cells)) {
alert(this.innerHTML); // выводим имя победителя
}else if (i == 8) {
alert('ничья');
}
});
}
}

function isVictory(cells) {
let combs = [
[0, 1, 2],
[3, 4, 5],
[6, 7, 8],
[0, 3, 6],
[1, 4, 7],
[2, 5, 8],
[0, 4, 8],
[2, 4, 6],
];

for (let comb of combs) {
if (
cells[comb[0]].innerHTML == cells[comb[1]].innerHTML &&
cells[comb[1]].innerHTML == cells[comb[2]].innerHTML &&
cells[comb[0]].innerHTML != ''
) {
return true;
}
}

return false;
}

btn.addEventListener('click', reset)

function reset(){
document.location.reload(true);
}

7 ответов

13 просмотров

Постишь своё полотно в третий раз за полчаса

Виктор- Автор вопроса
jk
Постишь своё полотно в третий раз за полчаса

это напоминание? чтоб я не забыл сколько раз постил?

Виктор
это напоминание? чтоб я не забыл сколько раз пости...

Это намёк на то что так делать невежливо

Виктор- Автор вопроса

когда кто-то победил, удали обработчик клика с кнопок

Виктор- Автор вопроса
Anton Permyakov
когда кто-то победил, удали обработчик клика с кно...

for (let cell of cells) { cell.addEventListener('click', function step() { this.innerHTML = ['X', 'O'][i % 2]; this.removeEventListener('click', step); if (isVictory(cells)) { cell.removeEventListener('click') }else if (i == 8) { } console.log(cell) i++; }); непомогает

Похожие вопросы

Обсуждают сегодня

И к какой архитектуре привязана Java?
Dmitry Olshansky
17
коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
@Aiwan что такое база образца?
Alexey
27
Не многие знают, а кто знает, тот уже успел забыть, что в далёком 2004 году эта игра произвела настоящий фурор, настолько революционной была технология, применяемая для её соз...
ICCID
4
Короче я тут узнал полный пиздец Что кучу постов которые я создавал через posted Спустя время не могу редактировать и менять Мол телега возвращае ошибку Это реально так ...
inc.
13
Хотя у меня сейчас есть более сложная задача, вот её думаю: как объяснить челу переходного возраста противоположного полу, обучающегося в польском колледже (а-ля наш техникум)...
Вячеслав Кузьменко
15
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
30
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Hi there everyone Is there anyone who have not started hamster bot yet? I need only one, I'll be glad if you do this for me DM if you haven't yet
Mehrshad
53
а вы в курсе, что Initialize() не работает? var arr123: array[0..123] of Byte; ... Initialize(arr123, SizeOf(arr123));
Iluha Companets
8
Карта сайта