IntersectionObserverEntry: isIntersecting property

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.

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.

js

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

Specification
Intersection Observer
# dom-intersectionobserverentry-isintersecting

Browser compatibility

BCD tables only load in the browser