728x90
검색 이펙트
이번 이펙트는 각 css 제목과 설명을 배열안에있는 객체로 저장하여 출력했습니다.
JS코드
keyup 을 통한 searchBox.value 를 가져와서 cssProperty 에있는 name 객체와 일치하면 출력이 되게했습니다.
코드 보기
//출력하기
cssProperty.map((e, i) => {
searchList.innerHTML += `${e.name}`;
searchNum.textContent = document.querySelectorAll(".search__list span").length;
});
//입력하기
searchBox.addEventListener("keyup", (e) => {
let searchWord = searchBox.value;
findProperty(searchWord);
});
document.querySelectorAll(".search__list span").forEach((el) => {
el.addEventListener("click", (e) => {
e.preventDefault();
document.querySelector("#header").scrollIntoView({ behavior: "smooth" });
findProperty(el.innerText);
});
});
//속성 찾기
function findProperty(searchData) {
const targetData = cssProperty.find((data) => data.name === searchData);
if (targetData == null) {
searchDesc.textContent = "해당 속성은 존재하지 않습니다. 다시 검색해 주세요.";
return;
}
searchDesc.textContent = `${targetData.name} 속성은 ${targetData.desc}`;
}
728x90
반응형
'JavaScript > Effect' 카테고리의 다른 글
이펙트 응용편 - 페럴럭스 육번째 (4) | 2022.09.29 |
---|---|
이펙트 응용편 - 마우스 육번째 (4) | 2022.09.29 |
이펙트 응용편 - 마우스 이펙트 오번째 (2) | 2022.09.28 |
이펙트 응용편 - 마우스 이펙트 네번째 (2) | 2022.09.27 |
이펙트 응용편 - 마우스 이펙트 세번째 (2) | 2022.09.27 |
댓글