티스토리 뷰
const searchBox = document.querySelector("#search-box"); //search-box(검색창)를 변수에 저장
const cssList = document.querySelectorAll(".list ul li"); //다수의 li를 변수(cssList)에 저장
const cssCount = document.querySelector(".count em") //em을 변수(cssCount:전체 속성 갯수)에 저장
cssList.forEach((e, index) => { //전체 속성 갯수 설정:li의 모든 index를 불러옴
e.classList.add("show"); //li의 index에 class="show" 추가
cssCount.innerHTML = index + 1; //배열은 0부터 시작하므로 문서의 li갯수와 일치 시키기 위해 +1
})
searchBox.addEventListener("keyup", () => { //search-box(검색창)에 입력(keyup)했을 때 설정
const searchWord = searchBox.value; //검색창에 입력한 값(을 데이터 저장소 변수(searchBox)에) 저장
cssList.forEach(el => { //각각의 li에 적용(설정)
const cssName = el.dataset.name; //CSS 속성 값을 변수(cssName)에 저장
if(cssName.includes(searchWord)){ //입력한 값에 데이터가 있는 지 없는지
el.classList.add("show"); //있으면 li에 class="show" 추가 -> 웹상에서 보임
} else {
el.classList.remove("show"); //없으면 li에 class="show" 삭제 -> 웹상에서 안보임
}
});
});
'Script samlpe > Search Effect' 카테고리의 다른 글
search effect06 - sort()를 이용하여 내림/오름차순 검색하기 (완료) (0) | 2022.03.11 |
---|---|
search effect05 - filter() (0) | 2022.02.09 |
search effect04 - find() (0) | 2022.02.09 |
search effect03 -charAt() (0) | 2022.02.09 |
search effect01 - indexOf() (2) | 2022.02.07 |
댓글
© 2018 webstoryboy