MDN’s new design is in Beta! A sneak peek:


This page is not complete.

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The IntersectionObserver interface's read-only thresholds property returns the list of intersection thresholds that was specified when the observer was instantiated with IntersectionObserver(). If only one threshold ratio was provided when instanitating the object, this will be an array containing that single value.

See "Thresholds" in Intersection Observer API to learn how thresholds work.


var thresholds = IntersectionObserver.thresholds;


An array of intersection thresholds, originally specified using the threshold property when instantiating the observer. If only one observer was speciied, without being in an array, this value is a one-entry array containing that threshold. Regardless of the order your original threshold array was in, this one is always sorted in numerically increasing order.

If no threshold option was included when IntersectionObserver() was used to instantiate the observer, the value of thresholds is simply [0].

Be careful! Although the options object you can specify when creating an IntersectionObserver has a field named threshold, this property is called thresholds. Confusing? Yes. If you accidentally use thresholds as the name of the field in your options, the thresholds array will wind up being simply [0.0], which is likely not what you expect. Debugging chaos may ensue.




Specification Status Comment
Intersection Observer
The definition of 'IntersectionObserver.thresholds' in that specification.
Editor's Draft Initial definition

Browser compatibility

FeatureChromeFirefoxEdgeInternet ExplorerOperaSafari
Basic Support51

53 — 551


FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support5151(Yes)?(No)??

1. From version 53 until version 55 (exclusive): this feature is behind the dom.IntersectionObserver.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

Document Tags and Contributors

 Contributors to this page: fscholz, Sheppy, UsainBloot
 Last updated by: fscholz,