diff options
Diffstat (limited to 'src/shared/observe-dom.ts')
| -rw-r--r-- | src/shared/observe-dom.ts | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/shared/observe-dom.ts b/src/shared/observe-dom.ts index dc2cb45..37bcfcd 100644 --- a/src/shared/observe-dom.ts +++ b/src/shared/observe-dom.ts @@ -1,15 +1,17 @@ type ObserveDOMCallback = () => boolean; let callbacks: (ObserveDOMCallback | null)[] = []; -let count = 0; +let callbacksCalledCount = 0; const observer = new MutationObserver(() => { - for (const callback of callbacks) { + for (let i = 0; i < callbacks.length; i++) { + const callback = callbacks[i]; if (callback && callback()) { - count++; + callbacksCalledCount++; + callbacks[i] = null; } - if (count >= callbacks.length) { + if (callbacksCalledCount >= callbacks.length) { observer.disconnect(); break; |
