JavaScript
x
18
18
1
let player1 = document.getElementById("player1").innerHTML;
2
let player2 = document.getElementById("player2").innerHTML;
3
4
let turn = 0
5
let blocks = document.getElementsByClassName("blocks");
6
7
for (let i of blocks) {
8
i.addEventListener("click", (event) => {
9
i.innerHTML = turn
10
if (turn == 0) {
11
event.target.innerHTML = player1
12
turn = 1
13
} else {
14
event.target.innerHTML = player2
15
turn = 0
16
}
17
})
18
}
JavaScript
1
24
24
1
<div class="container">
2
3
<div>
4
<div id="0" class="blocks"></div>
5
<div id="1" class="blocks"></div>
6
<div id="2" class="blocks"></div>
7
</div>
8
9
<div>
10
<div id="3" class="blocks"></div>
11
<div id="4" class="blocks"></div>
12
<div id="5" class="blocks"></div>
13
</div>
14
15
<div>
16
<div id="6" class="blocks"></div>
17
<div id="7" class="blocks"></div>
18
<div id="8" class="blocks"></div>
19
</div>
20
21
</div>
22
23
<div id="player1" class="players">👵🏿</div>
24
<div id="player2" class="players">👵🏻</div>
Advertisement
Answer
Just test for innerHTML
first to see if there is already somethign in there…
JavaScript
1
2
1
if (i.innerHTML.trim() != '') return;
2
JavaScript
1
18
18
1
let player1 = document.getElementById("player1").innerHTML;
2
let player2 = document.getElementById("player2").innerHTML;
3
let turn = 0
4
let blocks = document.getElementsByClassName("blocks");
5
for (let i of blocks){
6
i.addEventListener("click", (event)=>{
7
if (i.innerHTML.trim() != '') return;
8
i.innerHTML = turn
9
10
if (turn == 0){
11
event.target.innerHTML = player1
12
turn = 1
13
}
14
else {event.target.innerHTML = player2
15
turn = 0}
16
17
})
18
}
JavaScript
1
7
1
.blocks {
2
padding:20px;
3
text-align:center;
4
border:1px solid #666;
5
float:left;
6
margin-right:5px;
7
}
JavaScript
1
22
22
1
<div>
2
<div id="0" class="blocks"></div>
3
<div id="1" class="blocks"></div>
4
<div id="2" class="blocks"></div>
5
</div>
6
7
<div>
8
<div id="3" class="blocks"></div>
9
<div id="4" class="blocks"></div>
10
<div id="5" class="blocks"></div>
11
</div>
12
13
<div>
14
<div id="6" class="blocks"></div>
15
<div id="7" class="blocks"></div>
16
<div id="8" class="blocks"></div>
17
</div>
18
19
</div>
20
21
<div id="player1" class="players">👵🏿</div>
22
<div id="player2" class="players">👵🏻</div>