상황에 따라 css 변경하고 싶을 경우
css 파일에 작성을 해놓고 특정 class를 삽입하거나 삭제해 css를 적용하거나 적용하지 않을 수 있다.
클래스를 추가하고 삭제하는 방법은 classList, className 이 두가지를 이용해 가능하다.
☞ className의 경우 클래스명을 추가시에 < 기존에 가지고 있는 class명들을 전부 지우고 추가한다.>
☞ classList.add()의 경우 클래스명을 추가시에 <기존에 가지고 있는 class명들을 전부 유지하고 추가한다.>
- className
// html -> <h1 class="screen-header pink-background"></h1>
const h1 = document.querySelector("screen-header")
//h1의 className, 즉 screen-header pink-background가 출력된다.
console.log(h1.className)
// h1이 가진 모든 class를 삭제하고 main-header하나만을 추가
// html -> <h1 class="main-header"></h1>
h1.className = "main-header"
//h1이 가진 모든 class 삭제
h1.className = "";
- classList
contains() : class가 존재하는지 확인
add() : class name 추가
remove() : class name 삭제
toggle() : class name이 있는 경우엔 삭제하고 없는 경우엔 추가
// html -> <h1 class="screen-header pink-background"></h1>
const h1 = document.querySelector("screen-header")
// 해당 class가 존재하는지 확인
h1.classList.contains("pink-background");
// class명 추가
// html -> <h1 class="screen-header pink-background main-header"></h1>
h1.classList.add("main-header");
// class명 삭제
// html -> <h1 class="pink-background main-header"></h1>
h1.classList.remove("screen-header");
// 해당 class명이 존재하는 경우 삭제 or 존재하지않는 경우 삽입
// html -> <h1 class="pink-background main-header hello-header"></h1>
h1.classList.toggle("hello-header");
'JavaScript' 카테고리의 다른 글
[JavaScript] 비동기 호출 - callback, promise, async & await ( 내용 추가 예정 ) (0) | 2023.04.28 |
---|---|
[ Java Script ] Canvas api (0) | 2023.02.04 |
[JavaScript] Event 실행 및 종류 (0) | 2022.11.21 |
[JavaScript] html 파일 속 요소 가져오기 (0) | 2022.11.21 |
[JavaScript] 데이터 타입 확인 및 형변환 (0) | 2022.11.21 |