Merge pull request #542 from Chalarangelo/observe

[FEATURE] Add observeMutations.md
This commit is contained in:
Angelos Chalaris
2018-01-16 15:58:54 +02:00
committed by GitHub
2 changed files with 28 additions and 0 deletions

View File

@ -0,0 +1,27 @@
### observeMutations
Returns a new MutationObserver and runs the provided callback for each mutation on the specified element.
Use a [`MutationObserver`](https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver) to observe mutations on the given element.
Use `Array.forEach()` to run the callback for each mutation that is observed.
Omit the third argument, `options`, to use the default [options](https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver#MutationObserverInit) (all `true`).
```js
const observeMutations = (element, callback, options) => {
const observer = new MutationObserver(mutations => mutations.forEach(m => callback(m)));
observer.observe(element, Object.assign({
childList: true,
attributes: true,
attributeOldValue: true,
characterData: true,
characterDataOldValue: true,
subtree: true
}, options));
return observer;
}
```
```js
const obs = observeMutations(document, console.log); // Logs all mutations that happen on the page
obs.disconnect(); // Disconnects the observer and stops logging mutations on the page
```

View File

@ -121,6 +121,7 @@ negate:function
nthElement:array
objectFromPairs:object,array
objectToPairs:object,array
observeMutations:browser,event,advanced
off:browser,event
on:browser,event
once:function