The IntersectionObserverEntry
interface's read-only isIntersecting
property is a Boolean value which is true
if the target element intersects with the intersection observer's root. If this is true
, then, the IntersectionObserverEntry
describes a transition into a state of intersection; if it's false
, then you know the transition is from intersecting to not-intersecting.
IntersectionObserverEntry: isIntersecting property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2019.
Value
A Boolean value which indicates whether the target
element has transitioned into a state of intersection (true
) or out of a state of intersection (false
).
Examples
In this simple example, an intersection callback is used to update a counter of how many targeted elements are currently intersecting with the intersection root.
function intersectionCallback(entries) { entries.forEach((entry) => { if (entry.isIntersecting) { intersectingCount += 1; } else { intersectingCount -= 1; } }); }
To see a more concrete example, take a look at Handling intersection changes.
Specifications
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | ||
isIntersecting |
58 | 16 | 55 | 45 | 12.1 | 58 | 55 | 43 | 12.2 | 7.0 | 58 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserverEntry/isIntersecting