728x90
반응형
// event
const h1 = document.querySelector("div.hello:first-child h1");
function handleTitleClick() {
const clickedClass = "active"
if(h1.classList.contains(clickedClass)) {
h1.classList.remove(clickedClass);
} else {
h1.classList.add(clickedClass);
}
}
h1.addEventListener("click", handleTitleClick);
// event
const h1 = document.querySelector("div.hello:first-child h1");
function handleTitleClick() {
h1.classList.toggle("active");
}
h1.addEventListener("click", handleTitleClick);
classList 우리가 class들의 목록으로 작업할수 있게끔 허용해준다.
className은 이전calss를 상관하지않고 모든걸 교체해 버린다.
classList를 이용하는건
js에서 건드리는건 HTML element가 가지고있는 또하나의 요소 사용하는 것이다.
= element의 class내용물을 조작하는 것을 허용한다는 뜻
contains은 우리가 명시한 class가 HTML element의 class에 포함되어 있는지 말해준다
toggle은 토큰이 존재하면 토큰제거
토큰존재 하지않으면 토큰 추가
ex)
toggle은 h1의 classList에 clicked class가 이미있는지 확인하여
만약있다면 toggle 이 clicked를 제거해준다
만약 class name이 존재하지 않는다면 toggle은 classname 추가
728x90
반응형
'JS > JS_BASE' 카테고리의 다른 글
[기본문법 14] CSS in JavaScript part Two (0) | 2023.02.14 |
---|---|
[기본문법 13] CSS in JavaScript (0) | 2023.02.14 |
[기본 문법 12] More Events (0) | 2023.02.14 |
[기본 문법 11] Events part Two (0) | 2023.02.14 |
[기본 문법 10] Events (0) | 2023.02.14 |
댓글