--- title: DocumentOrShadowRoot.elementsFromPoint() slug: Web/API/Document/elementsFromPoint tags: - API - Document - DocumentOrShadowRoot - Method - Reference - ShadowRoot - elementsFromPoint - elementsFromPoint() - shadow dom - メソッド translation_of: Web/API/DocumentOrShadowRoot/elementsFromPoint original_slug: Web/API/DocumentOrShadowRoot/elementsFromPoint ---
elementsFromPoint()
は {{domxref("DocumentOrShadowRoot")}} インターフェイスのメソッドで、指定された座標 (ビューポートからの相対) にあるすべての要素の配列を返します。
これは {{domxref("DocumentOrShadowRoot.elementFromPoint", "elementFromPoint()")}} メソッドと同じような方法で動作します。
const elements = document.elementsFromPoint(x, y);
x
y
{{domxref("Element")}} オブジェクトの配列です。
<div> <p>Some text</p> </div> <p>Elements at point 30, 20:</p> <div id="output"></div>
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>"; }
{{EmbedLiveSample('Example', '420', '120')}}
仕様書 | 状態 |
---|---|
{{SpecName('Shadow DOM','#dom-documentorshadowroot-elementsfrompoint','elementsFromPoint()')}} | {{Spec2('Shadow DOM')}} |
{{SpecName('CSSOM View', '#dom-document-elementsfrompoint', 'elementsFromPoint()')}} | {{Spec2('CSSOM View')}} |
{{Compat("api.DocumentOrShadowRoot.elementsFromPoint")}}