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.
