JavaScript에서 MutationObserver API를 사용하여 DOM 요소의 변경 사항을 수신하는 방법은 무엇입니까?
6188 단어 javascript
돌연변이 관찰자란 무엇입니까?
Mutation Observer는 DOM의 요소에 대한 변경 사항을 수신하고 그에 따라 반응하는 데 도움이 되는 DOM API입니다.
Mutation Observer API를 사용하여 청취하는 방법은 무엇입니까?
DOM의 특정 요소를 먼저 관찰하거나 수신하려면
MutationObserver
를 만들어야 합니다.// make mutation observer
const observer = new MutationObserver();
MutationObserver()
생성자 함수 내부에 콜백 함수를 전달해야 합니다. 이 콜백 함수는 해당 요소가 변경될 때마다 실행되기 때문입니다.// make mutation observer
// and passing a callback function
// this callback function is triggered
// whenever there is a chnage to the element
const observer = new MutationObserver((event) => {
console.log(event);
});
예, 돌연변이 관찰자에게 어떤 요소가 변경 사항을 찾아야 하는지 말하지 않았다는 것을 압니다.
그것이 우리가 다음 단계에서 할 일입니다.
관찰자에게 요소를 첨부하려면
observe()
객체에서 observer
메서드를 사용해야 합니다.// make mutation observer
// and pass a callback function
// this callback function is triggered
// whenever there is a chnage to the element
const observer = new MutationObserver((event) => {
console.log(event);
});
// get reference to the h1 tag
const h1 = document.querySelector("h1");
// attach an h1 element tag to the observer
// to look for changes
observer.observe(h1);
observe()
메서드는 DOM 요소에 대한 유효한 참조를 첫 번째 인수로 허용합니다. h1
태그가 있고 속성 변경, 목록 변경과 같은 변경 사항을 찾고 싶습니다. h1
태그 안의 자식 수와 h1
태그의 하위 트리 변경 사항.구성 개체는 다음과 같습니다.
const config = {
attributes: true,
childList: true,
subtree: true,
};
이 구성 개체를 관찰자에게 전달해 보겠습니다.
// make mutation observer
// and pass a callback function
// this callback function is triggered
// whenever there is a chnage to the element
const observer = new MutationObserver((event) => {
console.log(event);
});
// get reference to the h1 tag
const h1 = document.querySelector("h1");
// attach an h1 element tag to the observer
// to look for changes
const config = {
attributes: true,
childList: true,
subtree: true,
};
observer.observe(h1, config);
이제 관찰자는 준비되어 변경 사항을 찾고 지정된 구성에 변경 사항이 있을 때마다 관찰자는 콜백 함수를 호출하고 세부 정보는 콜백 함수로 전달됩니다.
😃 유용하셨다면 공유해 주세요.
Reference
이 문제에 관하여(JavaScript에서 MutationObserver API를 사용하여 DOM 요소의 변경 사항을 수신하는 방법은 무엇입니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/melvin2016/how-to-listen-for-changes-in-dom-elements-using-the-mutationobserver-api-in-javascript-15fg텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)