MutationObserver如何使用?
时间: 2024-03-20 10:37:53 浏览: 86
on-load:使用MutationObserver的DOM元素的loadunload事件
MutationObserver***树变化的接口,它可以观察到DOM节点的添加、删除、属性变化等操作。使用MutationObserver可以实现对DOM变化的实时监测和处理。
使用MutationObserver的步骤如下:
1. 创建一个MutationObserver对象,需要传入一个回调函数作为参数,该回调函数会在DOM发生变化时被调用。
2. 调用MutationObserver对象的observe方法,传入要观察的目标节点和观察选项。
3. 在回调函数中处理DOM变化的逻辑。
下面是一个使用MutationObserver的示例代码:
```javascript
// 创建一个MutationObserver对象
const observer = new MutationObserver(function(mutationsList, observer) {
// 在回调函数中处理DOM变化的逻辑
for(let mutation of mutationsList) {
if (mutation.type === 'childList') {
console.log('子节点发生变化');
} else if (mutation.type === 'attributes') {
console.log('属性发生变化');
}
}
});
// 观察目标节点
const targetNode = document.getElementById('target');
const config = { attributes: true, childList: true, subtree: true };
observer.observe(targetNode, config);
```
在上面的代码中,我们创建了一个MutationObserver对象,并传入了一个回调函数。回调函数中使用了一个for循环来遍历mutationsList,根据mutation的type属性来判断DOM发生了何种变化。然后我们调用observe方法来观察目标节点targetNode,并传入了观察选项config。
阅读全文