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

search Effect (1)

by oranssy 2022. 8. 18.
728x90
๋ฐ˜์‘ํ˜•

โญ๏ธ ๊ฒ€์ƒ‰์ฐฝ ๋งŒ๋“ค๊ธฐ โญ๏ธ


01. < script > ์— ์ž‘์„ฑํ•˜๊ธฐ

    //์„ ํƒ์ž
    const searchBox = document.querySelector(".search__box input");   // input ๋ฐ•์Šค , ๊ฒ€์ƒ‰ ์˜์—ญ
    const searchList = document.querySelectorAll(".search__list ul li")  // ๋ชฉ๋ก ๋ฆฌ์ŠคํŠธ
    const searchInfo = document.querySelector(".search__info .num")   // ์ „์ฒด ๊ฐฏ์ˆ˜


    // ์ „์ฒด ๊ฐฏ์ˆ˜ ๊ตฌํ•˜๊ธฐ
    searchInfo.textContent = searchList.length;


    // ๊ฒ€์ƒ‰ ์˜์—ญ

    searchBox.addEventListener("keyup", () => {
        const searchWord  = searchBox.value;   // ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ํ‚ค์›Œ์ฆˆ
        // console.log(searchWord)

        searchList.forEach(el => {
            // console.log(el.dataset.name)

            const cssName = el.dataset.name;

            if(cssName.indexOf(searchWord)){
                el.classList.add("hide")
            } else {

                //"abbr".indexOf("abbr")
                el.classList.remove("hide")    // indexOf ๊ฐ’์ด 0์ด ๋˜๋Š” ๊ฐ’๋งŒ hide๋ฅผ ์ง€์›Œ์ฃผ๊ธฐ
            }
        });
    });

03. ๊ฒฐ๊ณผ๋ณด๊ธฐ

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€