티스토리 뷰
const searchBox = document.querySelectorAll(".search span"); //다수의 검색목록(.search span)를 변수(searchBox)에 저장
const cssList = document.querySelectorAll(".list ul li"); //다수의 리스트를 변수(cssList)에 저장
const cssCount = document.querySelector(".count em"); //전체 속성 갯수(.count)를 변수(cssCount)에 저장
//모든 데이터 보이기
cssList.forEach((li, index) => {
li.classList.add("show"); //초기값으로 cssList에 클래스 add("show")를 실행
cssCount.innerHTML = index + 1; //cssCount에 배열의 갯수를 문서에(innerHTML) 표현
})
//검색목록을 클릭하면 클리한 데이터 값을 가져와야 한다.
searchBox.forEach(el => {
el.addEventListener("click", () => {
const searchWord = el.innerText; // 버튼의 글자만
// console.log(searcWord);
cssList.forEach(el => {
// console.log(el)
const cssName = el.dataset.name; //검색목록 중 css 속성 값
// console.log(cssName);
const cssType = el.dataset.type; //검색목록 중 css 유형 값
// console.log(cssType);
//조건문의 조건: 버튼 첫글자 == css 속성의 첫글자 and 버튼 첫글자 == css 유형의 첫글자
if(searchWord.charAt(0) === cssName.charAt(0) || searchWord.charAt(0) === cssType.charAt(0)){
el.classList.add("show"); //참이면 add("show")를 실행 하여 class에 show 추가
} else {
el.classList.remove("show"); //거짓이면 remove("show")를 실행 하여 class에 show 제거
}
})
})
})
'Script Sample > Search Effect' 카테고리의 다른 글
Search Effect06 - sort( ) / reverse( ) (0) | 2022.02.15 |
---|---|
Search Effect05 - filter( ) (0) | 2022.02.11 |
Search Effect04 - find( ) (0) | 2022.02.08 |
Search Effect02 - includes( ) (0) | 2022.02.07 |
Search Effect01 - indexOf( ) (0) | 2022.02.07 |
댓글
© 2018 webstoryboy