하얀 코딩

[DOM - 5] querySelectorAll 본문

DOM

[DOM - 5] querySelectorAll

whitecoding 2023. 12. 12. 23:10

querySelectorAll는 JavaScript를 사용하여 웹 페이지에서 CSS 선택자에 맞는 모든 HTML 요소를 선택하는 메서드입니다. 이 메서드를 사용하면 여러 개의 요소를 선택하고 NodeList(요소 목록)을 반환합니다.

문법

let elements = document.querySelectorAll("CSS_선택자");

동작

querySelectorAll은 문서에서 CSS 선택자에 맞는 모든 요소를 선택하고 NodeList를 반환합니다.
NodeList는 배열 유사 객체이므로 배열처럼 인덱스를 사용하여 각 요소에 액세스할 수 있습니다.

예시

클래스 이름으로 요소 선택

let buttons = document.querySelectorAll(".button"); // 클래스가 "button"인 모든 요소 선택

태그 이름과 클래스 조합으로 요소 선택

 

let highlightedParagraphs = document.querySelectorAll("p.highlight"); // 클래스가 "highlight"인 모든 <p> 요소 선택

활용

선택한 모든 요소를 순회하며 조작할 수 있습니다.

예를 들어, 각 요소에 이벤트 리스너 추가, 스타일 변경 등이 가능합니다.

// 선택한 모든 버튼에 이벤트 리스너 추가 예제
let buttons = document.querySelectorAll(".button");
buttons.forEach(function(button) {
    button.addEventListener("click", function() {
        // 버튼이 클릭될 때 수행할 동작
    });
});

 

NodeList를 배열로 변환하여 배열 메서드(예: forEach, map)를 사용할 수 있습니다.

// NodeList를 배열로 변환하여 forEach를 사용하는 예제
let paragraphs = Array.from(document.querySelectorAll("p"));
paragraphs.forEach(function(paragraph) {
    // 각 단락 요소에 대한 조작
});

querySelectorAll는 웹 페이지에서 여러 개의 요소를 선택하고 일괄적으로 조작하려는 경우에 

매우 유용한 메서드입니다.

 NodeList를 다룰 때에는 배열과 유사하게 다양한 작업을 수행할 수 있습니다.

 

 

'DOM' 카테고리의 다른 글

[DOM - 6] Element 추가 / 삭제  (0) 2023.12.12
[DOM - 4] querySelector  (0) 2023.12.12
[DOM - 3] 단일 Element 선택  (0) 2023.12.12
[DOM - 2] 탐색 API  (0) 2023.12.12
[DOM - 1] DOM 기초  (0) 2023.01.04