Skip to content
Snippets Groups Projects
Commit 91eda4b1 authored by Jayden Lam's avatar Jayden Lam
Browse files

Upload New File

parent 98f208c3
No related branches found
No related tags found
No related merge requests found
game.js 0 → 100644
document.addEventListener('DOMContentLoaded', function() {
let selectedCard = null;
let selectedAnswer = null;
// Handle card clicks
document.querySelectorAll('.card').forEach(card => {
card.addEventListener('click', function() {
if (selectedCard) {
selectedCard.classList.remove('selected');
}
selectedCard = this;
selectedCard.classList.add('selected');
checkMatch();
});
});
// Handle answer clicks
document.querySelectorAll('.answer').forEach(answer => {
answer.addEventListener('click', function() {
if (selectedAnswer) {
selectedAnswer.classList.remove('selected');
}
selectedAnswer = this;
selectedAnswer.classList.add('selected');
checkMatch();
});
});
function shuffleElements(selector) {
const elements = document.querySelectorAll(selector);
for (let i = elements.length -1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
elements[i].parentNode.insertBefore(elements[j], elements[i]);
}
}
// Shuffle cards and answers
shuffleElements('.card');
shuffleElements('.answer');
function checkMatch() {
if (selectedCard && selectedAnswer) {
let messageElement = document.getElementById('message');
if (selectedCard.dataset.answer === selectedAnswer.dataset.answer) {
messageElement.textContent = 'Correct match!';
selectedCard.classList.add('matched');
selectedAnswer.classList.add('matched');
// Reset selection
selectedCard = null;
selectedAnswer = null;
} else {
messageElement.textContent = 'Wrong match. Try again.';
setTimeout(() => {
selectedCard.classList.remove('selected');
selectedAnswer.classList.remove('selected');
selectedCard = null;
selectedAnswer = null;
messageElement.textContent = '';
}, 1000);
}
}
}
});
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment