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.
Syntax
var isIntersecting =
IntersectionObserverEntry.isIntersecting;
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
).
Example
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(function(entry) { if (entry.isIntersecting) { intersectingCount += 1; } else { intersectingCount -= 1; } }); }
To see a more concrete example, take a look at Handling intersection changes in Timing element visibility with the Intersection Observer API.
Specifications
Specification | Status | Comment |
---|---|---|
Intersection Observer The definition of 'IntersectionObserverEntry.isIntersecting' in that specification. |
Working Draft | Initial definition |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
isIntersecting | Chrome Full support 51 | Edge Full support 16 | Firefox
Full support
55
| IE No support No | Opera Full support Yes | Safari Full support 12.1 | WebView Android Full support 51 | Chrome Android Full support 51 | Firefox Android ? | Opera Android ? | Safari iOS ? | Samsung Internet Android Full support 5.0 |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- User must explicitly enable this feature.
- User must explicitly enable this feature.