Observers

Observers replace polling and scroll or resize handlers with batched callbacks. All have observe() and disconnect().

The observer family
Observer Reports Status
MutationObserver DOM changes (MutationObserver) Widely available (2015)
ResizeObserver Element size changes Widely available (2020)
IntersectionObserver Visibility in a viewport or scroller Widely available (2019)
PerformanceObserver Performance timeline entries All engines
ReportingObserver Deprecations, interventions, violations Newly available (2026)

Subsections