DEV/javascript
Javascript 웹 페이지의 DOM 변경 사항 감시 및 콜백 지원 (MutationObserver)
석봉
2023. 5. 8. 11:40
MutationObserver
웹 페이지에서 특정 요소의 스타일이 변경되거나, 새로운 요소가 추가되는 등의 DOM 변경이 발생하면,
MutationObserver는 이를 감지하고 콜백 함수를 실행
이를 통해, 실시간으로 DOM 변경을 감지하여 이에 대한 처리를 할 수 있음
Sample.js
// 감시할 요소 선택
const targetNode = document.getElementById('target');
// MutationObserver 생성
const observer = new MutationObserver((mutationsList, observer) => {
for(let mutation of mutationsList) {
if (mutation.type === 'childList') {
console.log('Child node has been added or removed');
}
}
});
// 감시할 옵션 설정
const config = { childList: true };
// 감시 시작
observer.observe(targetNode, config);
위 Sample.js 는 target 요소의 자식 요소 추가 및 삭제를 감시
조건은 본인이 필요한 조건에 맞춰 수정하여 사용하면 된다.
감시 종료 방법
observer.disconnect();