DocumentOrShadowRoot.nodesFromPoint()

Non-standard
This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The nodesFromPoint() property of the DocumentOrShadowRoot interface returns an array of all nodes at the specified coordinates (relative to the viewport).

Currently this method is only implemented in Firefox, and only available to chrome code.

Syntax

var nodes = document.nodesFromPoint(x, y);

Parameters

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

Returns

An array of Node objects.

Example

HTML Content

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

JavaScript Content

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

Specifications

Not part of any specification at present.

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
nodesFromPoint
ExperimentalNon-standard
Chrome No support NoEdge No support NoFirefox No support No
Notes
No support No
Notes
Notes Implemented in Firefox but currently only works in chrome code.
IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoFirefox Android No support No
Notes
No support No
Notes
Notes Implemented in Firefox but currently only works in chrome code.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android No support No

Legend

No support
No support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
See implementation notes.
See implementation notes.

See Also