-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
98 lines (82 loc) · 2.72 KB
/
script.js
File metadata and controls
98 lines (82 loc) · 2.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
const word_el = document.getElementById('word');
const popup = document.getElementById('popup-container');
const message_el = document.getElementById('success-message');
const wrongLetters_el = document.getElementById('wrong-letters');
const items = document.querySelectorAll('.item');
const message = document.getElementById('message');
const PlayAgainBtn = document.getElementById('play-again');
const correctLetters = [];
const wrongLetters = [];
let selectedWord = getRandomWord();
function getRandomWord() {
const words = ["javascript","java","python","css","html"];
return words[Math.floor(Math.random() * words.length)];
}
function displayWord() {
word_el.innerHTML = `
${selectedWord.split('').map(letter => `
<div class="letter">
${correctLetters.includes(letter) ? letter: ''}
</div>
`).join('')}
`;
const w = word_el.innerText.replace(/\n/g,'');
if (w === selectedWord) {
popup.style.display = 'flex';
message_el.innerText = 'Tebrikler kazandınız.';
}
}
function updateWrongLetters() {
wrongLetters_el.innerHTML = `
${wrongLetters.length>0?'<h3>Hatalı harfler</h3>':''}
${wrongLetters.map(letter=> `<span>${letter}<span>`)}
`;
items.forEach((item,index) => {
const errorCount = wrongLetters.length;
if (index<errorCount) {
item.style.display = 'block';
} else {
item.style.display = 'none';
}
})
if(wrongLetters.length === items.length) {
popup.style.display = 'flex';
message_el.innerText = 'Maalesef Kaybettiniz.';
}
}
function displayMessage() {
message.classList.add('show');
setTimeout(function() {
message.classList.remove('show');
}, 2000);
}
PlayAgainBtn.addEventListener('click', function() {
correctLetters.splice(0);
wrongLetters.splice(0);
selectedWord = getRandomWord();
displayWord();
updateWrongLetters();
popup.style.display = 'none';
});
window.addEventListener('keydown', function(e) {
if (e.keyCode >= 65 && e.keyCode <= 90) {
const letter = e.key;
if (selectedWord.includes(letter)) {
if (!correctLetters.includes(letter)) {
correctLetters.push(letter);
displayWord();
} else {
displayMessage();
}
} else {
if(!wrongLetters.includes(letter)) {
wrongLetters.push(letter);
updateWrongLetters();
}
else {
displayMessage();
}
}
}
});
displayWord()