This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The elementsFromPoint()
property of the DocumentOrShadowRoot
interface returns an array of all elements at the specified coordinates (relative to the viewport).
Syntax
var elements = document.elementsFromPoint(x, y);
Parameters
- x
- The horizontal coordinate of a point.
- y
- The vertical coordinate of a point.
Returns
An array of element
objects.
Example
HTML Content
<div> <p>Some text</p> </div> <p>Elements at point 30, 20:</p> <div id="output"></div>
JavaScript Content
var output = document.getElementById("output"); if (document.elementsFromPoint) { var 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 | Comment |
---|---|---|
Shadow DOM The definition of 'DocumentOrShadowRoot' in that specification. |
Obsolete | Initial definition. |
CSS Object Model (CSSOM) View Module The definition of 'Document' in that specification. |
Working Draft | Specifies paint order. |
Browser Compatibility
The compatibility table on 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.
Update compatibility data on GitHub
Desktop | Mobile | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Basic support | Chrome Full support 53 | Edge Full support Yes | Firefox Full support Yes | IE Full support Yes | Opera Full support 40 | Safari Full support Yes | WebView Android Full support 53 | Chrome Android Full support 53 | Edge Mobile Full support Yes | Firefox Android Full support Yes | Opera Android Full support 40 | Safari iOS Full support Yes | Samsung Internet Android Full support 6.0 |
Legend
- Full support
- Full support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
See Also
Document Tags and Contributors
Tags:
Contributors to this page:
ExE-Boss,
progers,
fscholz,
chrisdavidmills,
HolgerJeromin,
mbhall88,
david_ross,
jpmedley
Last updated by:
ExE-Boss,