Web/API/DocumentOrShadowRoot/elementsFromPoint

From Get docs

This is an experimental technologyCheck the Browser compatibility table carefully before using this in production.


The elementsFromPoint() method of the DocumentOrShadowRoot interface returns an array of all elements at the specified coordinates (relative to the viewport).

It operates in a similar way to the elementFromPoint() method.

Syntax

const elements = document.elementsFromPoint(x, y);

Parameters

x
The horizontal coordinate of a point.
y
The vertical coordinate of a point.

Return value

An array of element objects.

Example

HTML

<div>
  <p>Some text</p>
</div>
<p>Elements at point 30, 20:</p>
<div id="output"></div>

JavaScript

let output = document.getElementById("output");
if (document.elementsFromPoint) {
  let elements = document.elementsFromPoint(30, 20);
  for (var i = 0; i < elements.length; i++) {
    output.textContent += elements[i].localName;
    if (i < elements.length - 1) {
      output.textContent += " < ";
    }
  }
} else {
  output.innerHTML = "<span style=\"color: red;\">" +
     "Browser does not support <code>document.elementsFromPoint()</code>" +
     "</span>";
}

Specifications

Specification Status
Shadow DOMThe definition of 'elementsFromPoint()' in that specification. Obsolete
CSS Object Model (CSSOM) View ModuleThe definition of 'elementsFromPoint()' in that specification. Working Draft

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

elementsFromPoint

Experimental'

Chrome Full support 53

Notes'

Full support 53

Notes'

Notes' Before Chrome 66, this method returned null when the element was a child of a host node. See issue 759947.

Edge Full support 12

Notes' Alternate Name'

Full support 12

Notes' Alternate Name'

Notes' Returns a NodeList instead of an array. See the MSDN documentation. Returns null when the point provided has no elements beneath it (e.g., when given a point outside the document). Alternate Name' Uses the non-standard name: msElementsFromPoint

Firefox

Full support 63

IE Full support 10

Notes' Alternate Name'

Full support 10

Notes' Alternate Name'

Notes' Returns a NodeList instead of an array. See the MSDN documentation. Returns null when the point provided has no elements beneath it (e.g., when given a point outside the document). Alternate Name' Uses the non-standard name: msElementsFromPoint

Opera

Full support 40

Safari

Full support 12

WebView Android Full support 53

Notes'

Full support 53

Notes'

Notes' Before WebView 66, this method returned null when the element was a child of a host node. See issue 759947.

Chrome Android Full support 53

Notes'

Full support 53

Notes'

Notes' Before Chrome 66, this method returned null when the element was a child of a host node. See issue 759947.

Firefox Android

Full support 63

Opera Android

Full support 41

Safari iOS

Full support 12

Samsung Internet Android Full support 6.0

Notes'

Full support 6.0

Notes'

Notes' Before Samsung Internet 9.0, this method returned null when the element was a child of a host node. See issue 759947.

Legend

Full support  
Full support
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
See implementation notes.'
See implementation notes.
Uses a non-standard name.'
Uses a non-standard name.


See also