๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Javascript Effect

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ€ด์ฆˆ ํšจ๊ณผ : ์ฃผ๊ด€์‹ ์œ ํ˜•

by ์ฝ”ํŒŒ์นด 2022. 8. 4.
728x90

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ : ํ€ด์ฆˆ ํšจ๊ณผ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋‹ค์–‘ํ•œ ํšจ๊ณผ๋“ค ์ค‘, ํ€ด์ฆˆ๋ฅผ ๋งžํž ์ˆ˜ ์žˆ๋Š” ํ€ด์ฆˆ ํšจ๊ณผ์ž…๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ๋„, ์ฃผ๊ด€์‹ ์ •๋‹ต์„ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ํ€ด์ฆˆ ์œ ํ˜•์„ ์ž‘์—…ํ•ด ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


์ฃผ๊ด€์‹ ์œ ํ˜•

์˜ˆ์‹œ๋Š” ์›น๋””์ž์ธ๊ธฐ๋Šฅ์‚ฌ์˜ ํ•„๊ธฐ ์‹œํ—˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต์„ ๋งžํžˆ๋ฉด ๋ฌธ๊ตฌ๊ฐ€ ๋‚˜ํƒ€๋‚˜๋ฉฐ ๊ฐ•์•„์ง€ ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ๊ธฐ๋ปํ•˜๊ณ , ์ •๋‹ต์„ ๋งžํžˆ์ง€ ๋ชปํ•˜๋ฉด ์Šฌํผํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์œผ๋กœ ์ž…๋ ฅ๊ฐ’์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

// ์„ ํƒ์ž
const quizType = document.querySelector(".quiz__type");                     // ํ€ด์ฆˆ ์ข…๋ฅ˜
const quizNumber = document.querySelector(".quiz__question .number");       // ํ€ด์ฆˆ ๋ฒˆํ˜ธ
const quizAsk = document.querySelector(".quiz__question .ask");             // ํ€ด์ฆˆ ์งˆ๋ฌธ
const quizConfirm = document.querySelector(".quiz__answer .confirm");       // ์ •๋‹ต ํ™•์ธ ๋ฒ„ํŠผ
const quizResult = document.querySelector(".quiz__answer .result");         // ์ •๋‹ต ๊ฒฐ๊ณผ
const quizInput = document.querySelector(".quiz__answer .input");           // ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’
const quizView = document.querySelector(".quiz__view");                     // ๊ฐ•์•„์ง€
    
// ๋ฌธ์ œ ์ •๋ณด
const answerType = "์›น๋””์ž์ธ๊ธฐ๋Šฅ์‚ฌ";
const answerNum = "2";
const answerAsk = "๊ธฐ์—…์˜ ์ƒˆ๋กœ์šด ์ด๋… ๊ตฌ์ถ•์— ํ•„์š”ํ•œ ์ด๋ฏธ์ง€์™€ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์‹œ์Šคํ…œ์„ ์˜๋„์ , ๊ณ„ํš์ ์œผ๋กœ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๊ธฐ์—… ์ด๋ฏธ์ง€ ํ†ตํ•ฉ ์ „๋žต์€ ๋ฌด์—‡์ธ๊ฐ€?";
let answerResult = "CIP";       // ์•„๋ž˜์—์„œ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๊ธฐ ๋•Œ๋ฌธ์— const๊ฐ€ ์•„๋‹Œ let์œผ๋กœ ์„ ์–ธ
    
// ๋ฌธ์ œ ์ถœ๋ ฅ
quizType.innerText = answerType;
quizNumber.innerText = answerNum + ". ";
quizAsk.innerText = answerAsk;
quizResult.innerText = "์ •๋‹ต์€ " + answerResult.toLowerCase() + "์ž…๋‹ˆ๋‹ค.";
    
// ์ •๋‹ต ์ˆจ๊ธฐ๊ธฐ
quizResult.style.display = "none";
    
// ์ •๋‹ต ํ™•์ธ
quizConfirm.addEventListener("click", () => {       // ์ •๋‹ต ๋ฒ„ํŠผ์„ ํด๋ฆญํ–ˆ์„ ๋•Œ
    quizInput.style.display = "none";
    quizResult.style.display = "block";             // ์ •๋‹ต์ด ๋‚˜ํƒ€๋‚˜๊ฒŒ ํ•จ
    quizConfirm.style.display = "none";
    
    // ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’
    const userWord = quizInput.value.toLowerCase().trim();       // ์†Œ๋ฌธ์ž ์ „ํ™˜, ์—ฌ๋ฐฑ
    answerResult = answerResult.toLowerCase().trim();
    console.log(userWord)
    console.log(quizResult)
    
    // ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’ == ๋ฌธ์ œ์˜ ์ •๋‹ต
    if (userWord == answerResult) {
        // ์ •๋‹ต์ผ ๊ฒฝ์šฐ "like" class๋ฅผ ์ถ”๊ฐ€
        quizView.classList.add("like");     
    } else {
        // ์˜ค๋‹ต์ผ ๊ฒฝ์šฐ "dislike" class๋ฅผ ์ถ”๊ฐ€
        quizView.classList.add("dislike");     
    }
});
728x90

๋Œ“๊ธ€

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿฆ™

CSS
๊ด‘๊ณ  ์ค€๋น„์ค‘