728x90
λ°μν
κ°κ΄μ μ¬λ¬λ¬Έμ
μλ°μ€ν¬λ¦½νΈ
//λ¬Έμ μ 보
const quizInfo = [
{
answerType : "μΉλμμΈκΈ°λ₯μ¬ 2011λ
04ν",
answerNum : "1",
answerAsk : "λμμΈμ ν©λͺ©μ μ±μ λν μ€λͺ
μΌλ‘ μ³μ κ²μ?",
answerChoice : [
"μ ν΄μ§ λ°νμΌλ‘ μ΅μμ λμμΈμ μ°½μΆνλ κ²μ λ§νλ€.",
"λμμΈμ ν λ λͺ©μ μ λ§λ μλ¨μ μ¬μ©νμλμ§λ₯Ό λ§νλ€.",
"λ³΄λ€ μ€μ©μ μ΄κ³ μ¬λ―Έμ μΌλ‘ κ°μ , λ°μ μν€λ κ²μ λ§νλ€.",
"κ°μ±μ μΈ λ―Έμμμ μ°½μΆν΄λ΄λ κ²μ λ§νλ€."
],
answerResult : "λμμΈμ ν λ λͺ©μ μ λ§λ μλ¨μ μ¬μ©νμλμ§λ₯Ό λ§νλ€.",
answerEx : "λμμΈμ ν λ λͺ©μ μ λ§λ μλ¨μ μ¬μ©νμλμ§λ₯Ό λ§νλ€."
},
{
answerType : "μΉλμμΈκΈ°λ₯μ¬ 2011λ
04ν",
answerNum : "2",
answerAsk : "μμμ μκ·Ήνλ μμμΌλ‘ μ³μ κ²μ?",
answerChoice : [
"λΉ¨κ°",
"μ²λ‘",
"보λΌ",
"κ²μ "
],
answerResult : "ν
μ€νΈνμΌ λμμΈ",
answerEx : "λΆμμκ³μ΄μ μμμ μκ·Ήνλ μμ
λλ€."
},
{
answerType : "μΉλμμΈκΈ°λ₯μ¬ 2011λ
04ν",
answerNum : "3",
answerAsk : "λμλλΉμ ν΄λΉνμ§ μλ κ²μ?",
answerChoice : [
"λͺ
λλλΉ",
"μμλλΉ",
"보μλλΉ",
"μ μ¬λλΉ"
],
answerResult : "μΆμ νν",
answerEx : "λμλλΉ : 2κ°μ§ μ΄μμ μμ λμμ λ³Όλ μΌμ΄λλ λλΉνμ / μμλλΉ, λͺ
λλλΉ, μ±λλλΉ, 보μλλΉκ° μμ."
},
{
answerType : "μΉλμμΈκΈ°λ₯μ¬ 2011λ
04ν",
answerNum : "4",
answerAsk : "λ€μ μ€ μμ 3μμ±μ΄ μλ κ²μ",
answerChoice : [
"μμ",
"λͺ
λ",
"μ±λ",
"λλΉ"
],
answerResult : "λλΉ",
answerEx : "μμ 3μμ± : μμ ꡬλ³νλ λ° νμν μμ(H), λͺ
λ(V), μ±λ(C)λ₯Ό μμ 3μμ λλ μμ 3μμ±μ΄λΌκ³ ν©λλ€. / μμ :μ μ±μμ λΆλ₯ν λ κ° μμ λΆμΈ λͺ
μΉ λλ κΈ°νΈλ₯Ό κ·Έ μμ μμμ΄λΌκ³ ν¨. / λͺ
λ : 물체μ λ°κ³ μ΄λμ΄ μ λλ₯Ό λ§ν¨. κ²μμ 0, νμμ 10μΌλ‘ νκ³ κ·Έ μ€κ° 11λ¨κ³μ νμ λ¨κ³λ₯Ό κ·Έλ μ΄μ€μΌμΌμ΄λΌ νλ©° λͺ
λμ κΈ°μ€μ²λνΈ μ¬μ© ν¨. / μ±λ : μμ μλ, μμ μ λͺ
νκ³ νν μ λλ₯Ό λ§ν¨. μμ ν¬νλ , μ λͺ
λλΌκ³ λ ν¨."
},
{
answerType : "μΉλμμΈκΈ°λ₯μ¬ 2011λ
04ν",
answerNum : "5",
answerAsk : "λ€μ μ€ μ£Όμμμ μν₯μΌλ‘ μ€νλ € μΈμ μμ κ°κΉκ² λκ»΄μ§λ νμμ μλ―Ένλ κ²μ?",
answerChoice : [
"λν νμ",
"λͺ
μνμ",
"μμ μμΆμ±",
"μ€λνμ"
],
answerResult : "λν νμ",
answerEx : "λννμμ λλ₯μ μλ¦¬λ‘ κ°μ₯ κ°κΉμ΄ μμ±λΌλ¦¬μ λ°°μμ μΉκ·Όκ°κ³Ό μ‘°νλ₯Ό λλΌκ² ν©λλ€."
}
];
const quizQuestion = document.querySelector(".quiz__question");
const quizSelects = document.querySelector(".quiz__selects");
const quizType = document.querySelector(".quiz__type");
const quizResult = document.querySelector(".quiz__answer .result");
const quizConfirm = document.querySelector(".quiz__answer .confirm");
const quizView = document.querySelector(".quiz__view"); //κ°μμ§
let quizCount = 0;
let quizScore = 0;
// λ¬Έμ μΆλ ₯
const updateQuiz = (index) => {
const questionTag = `
<span class="number">${quizInfo[index].answerNum}</span>
<div class="ask">${quizInfo[index].answerAsk}</div>
`
const choiceTag = `
<label for="select1">
<input type="radio" id="select1" class="select" name="select" value="1">
<span class="choice">${quizInfo[index].answerChoice[0]}</span>
</label>
<label for="select2">
<input type="radio" id="select2" class="select" name="select" value="2">
<span class="choice">${quizInfo[index].answerChoice[1]}</span>
</label>
<label for="select3">
<input type="radio" id="select3" class="select" name="select" value="3">
<span class="choice">${quizInfo[index].answerChoice[2]}</span>
</label>
<label for="select4">
<input type="radio" id="select4" class="select" name="select" value="4">
<span class="choice">${quizInfo[index].answerChoice[3]}</span>
</label>
`;
//λ¬Έμ μΆλ ₯
quizType.innerHTML = quizInfo[index].answerType; //λ¬Έμ μ ν>
quizQuestion.innerHTML = questionTag; //λ²νΈ, μ§λ¬Έ>
quizSelects.innerHTML = choiceTag; //κ°κ΄μ
quizResult.innerHTML = quizInfo[index].answerEx //ν΄μ€
const quizChoice = quizSelects.querySelectorAll(".choice");
for(let i=0; i<quizChoice.length; i++){
quizChoice[i].setAttribute("onclick", "choiceSelected(this)")
}
//λ¬Έμ , ν΄μ€ μ¨κΈ°κΈ°
quizResult.style.display = "none"
quizConfirm.style.display = "none"
}
updateQuiz(quizCount);
const choiceSelected = (answer) => {
let userAnswer = answer.textContent; //μ¬μ©μκ° μ²΄ν¬ν μ λ΅
let currentAnswer = quizInfo[quizCount].answerResult; //λ¬Έμ μ μ λ΅
if(userAnswer == currentAnswer){
console.log("μ λ΅")
quizView.classList.add("like");
quizScore++;
} else {
console.log("μ€λ΅")
quizView.classList.add("dislike");
quizResult.style.display = "block"
}
quizConfirm.style.display = "block"
}
//μ λ΅ νμΈ λ²νΌ
const answerQuiz = () => {
quizCount++;
updateQuiz(quizCount);
quizView.classList.remove("like", "dislike")
//λ§μ§λ§ λ¬Έμ
if(quizInfo.length-1 == quizCount) {
quizConfirm.textContent = `μ΄ ${quizInfo.length} λ¬Έμ μ€μ ${quizScore} λ¬Έμ λ₯Ό λ§μΆμμ΅λλ€.`
}
}
quizConfirm.addEventListener("click", answerQuiz);
728x90
λ°μν
'μ΄ννΈ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
03. μ¬λΌμ΄λ μ΄ννΈ - μ’λ‘ μμ§μ΄κΈ° (5) | 2022.08.29 |
---|---|
03. μ¬λΌμ΄λ μ΄ννΈ - νΈλμ§μ ν¨κ³Ό (6) | 2022.08.29 |
μμΉ μ΄ννΈ 3 (3) | 2022.08.23 |
2. μμΉ μ΄ννΈ - 2 (2) | 2022.08.17 |
2. μμΉ μ΄ννΈ -1 (1) | 2022.08.17 |
λκΈ