diff options
Diffstat (limited to 'files/ja/web/api/document')
3 files changed, 258 insertions, 0 deletions
diff --git a/files/ja/web/api/document/caretpositionfrompoint/index.html b/files/ja/web/api/document/caretpositionfrompoint/index.html new file mode 100644 index 0000000000..44deaf1be3 --- /dev/null +++ b/files/ja/web/api/document/caretpositionfrompoint/index.html @@ -0,0 +1,104 @@ +--- +title: DocumentOrShadowRoot.caretPositionFromPoint() +slug: Web/API/Document/caretPositionFromPoint +tags: + - API + - Document + - DocumentOrShadowRoot + - Method + - Reference + - ShadowRoot + - caretPositionFromPoint() +translation_of: Web/API/DocumentOrShadowRoot/caretPositionFromPoint +original_slug: Web/API/DocumentOrShadowRoot/caretPositionFromPoint +--- +<p>{{APIRef("CSSOM View")}}{{SeeCompatTable}}</p> + +<p><span class="seoSummary">{{domxref("DocumentOrShadowRoot")}} インターフェイスの <strong><code>caretPositionFromPoint()</code></strong> プロパティは、 DOM ノードを含む {{domxref('CaretPosition')}} オブジェクトを、そのノード内のキャレットとキャレットの文字オフセットと共に返します。</span></p> + +<h2 id="構文">構文</h2> + +<pre class="syntaxbox notranslate">var caretPosition = document.caretPositionFromPoint(float x, float y);</pre> + +<h3 id="パラメータ">パラメータ</h3> + +<dl> + <dt><code>x</code></dt> + <dd>ポイントの水平座標。</dd> + <dt><code>y</code></dt> + <dd>ポイントの垂直座標。</dd> +</dl> + +<h3 id="返り値">返り値</h3> + +<p>{{domxref('CaretPosition')}} オブジェクト。</p> + +<h2 id="例">例</h2> + +<p>この例では、クリックした場所に改行を挿入します。そのコードはデモの下にあります。</p> + +<h3 id="Demo">Demo</h3> + +<p>{{EmbedLiveSample('Example', '100%', '300px')}}</p> + +<h3 id="HTML_Content">HTML Content</h3> + +<pre class="brush: html notranslate"><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, +sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, +sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. +Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p></pre> + +<h3 id="JavaScript_Content">JavaScript Content</h3> + +<pre class="brush: js notranslate">function insertBreakAtPoint(e) { + var range; + var textNode; + var offset; + + if (document.caretPositionFromPoint) { + range = document.caretPositionFromPoint(e.clientX, e.clientY); + textNode = range.offsetNode; + offset = range.offset; + } else if (document.caretRangeFromPoint) { + range = document.caretRangeFromPoint(e.clientX, e.clientY); + textNode = range.startContainer; + offset = range.startOffset; + } + + // only split TEXT_NODEs + if (textNode.nodeType == 3) { + var replacement = textNode.splitText(offset); + var br = document.createElement('br'); + textNode.parentNode.insertBefore(br, replacement); + } +} + +window.onload = function (){ + var paragraphs = document.getElementsByTagName("p"); + for (i=0 ; i < paragraphs.length; i++) { + paragraphs[i].addEventListener("click", insertBreakAtPoint, false); + } +};</pre> + +<h2 id="仕様">仕様</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">仕様</th> + <th scope="col">ステータス</th> + <th scope="col">備考</th> + </tr> + <tr> + <td>{{SpecName('CSSOM View','#dom-document-caretpositionfrompoint','caretPositionFromPoint()')}}</td> + <td>{{Spec2('CSSOM View')}}</td> + <td>Initial definition.</td> + </tr> + </tbody> +</table> + +<h2 id="ブラウザー実装状況">ブラウザー実装状況</h2> + + + +<p>{{Compat("api.DocumentOrShadowRoot.caretPositionFromPoint")}}</p> diff --git a/files/ja/web/api/document/elementfrompoint/index.html b/files/ja/web/api/document/elementfrompoint/index.html new file mode 100644 index 0000000000..662260e4ae --- /dev/null +++ b/files/ja/web/api/document/elementfrompoint/index.html @@ -0,0 +1,51 @@ +--- +title: document.elementFromPoint +slug: Web/API/Document/elementFromPoint +tags: + - DOM + - Gecko + - Gecko DOM Reference +translation_of: Web/API/DocumentOrShadowRoot/elementFromPoint +translation_of_original: Web/API/Document/elementFromPoint +original_slug: Web/API/DocumentOrShadowRoot/elementFromPoint +--- +<div> + {{ApiRef()}} {{Fx_minversion_header(3)}}</div> +<h2 id="Summary" name="Summary">概要</h2> +<p>文書の左上を基点として指定された座標上にある要素を返します。</p> +<h2 id="Syntax" name="Syntax">構文</h2> +<pre class="syntaxbox"><var>element</var> = document.elementFromPoint(<i>x</i>,<i>y</i>);</pre> +<ul> + <li><code>element</code> には <a href="/ja/docs/DOM/element">element</a> オブジェクトが入ります。</li> + <li><code>x</code> と <code>y</code> には取得したい要素の座標を指定してください。</li> +</ul> +<h2 id="Example" name="Example">例</h2> +<pre class="brush:html"><!DOCTYPE html> +<html lang="ja"> +<head> +<title>elementFromPoint の使用例</title> + +<script> +function changeColor(newColor) { + elem = document.elementFromPoint(2, 2); + elem.style.color = newColor; +} +</script> +</head> + + +<body> +<p id="para1">色は匂へど 散りぬるを……</p> +<button onclick="changeColor('blue');">blue</button> +<button onclick="changeColor('red');">red</button> +</body> +</html> +</pre> +<h2 id="Notes" name="Notes">注記</h2> +<p>指定された座標にある要素が別のドキュメント(例えば iframe 内にあるサブドキュメント) に属する場合、指定された座標にあるドキュメントの DOM 要素 (iframe) を返します。もし指定された座標にある要素が匿名あるいは textbox のスクロールバーのように XBL によって生成された内容の場合、指定された座標にある要素を基点として、匿名ではない最初の親要素(例えば textbox)が返されます。</p> +<p>指定された座標がドキュメントの表示外にあるか、座標のどちらかに負の値が設定されている場合は <code>NULL</code> を返します。</p> +<p>{{Note("XUL ドキュメントからは onload イベントが発生するまでは、このメソッドを使用してはいけません。")}}</p> +<h2 id="Specification" name="Specification">仕様</h2> +<ul> + <li>仮仕様: <a class="external" href="http://dev.w3.org/csswg/cssom/#documentlayout-elementfrompoint"><code>elementFromPoint</code></a></li> +</ul> diff --git a/files/ja/web/api/document/elementsfrompoint/index.html b/files/ja/web/api/document/elementsfrompoint/index.html new file mode 100644 index 0000000000..a885ce197f --- /dev/null +++ b/files/ja/web/api/document/elementsfrompoint/index.html @@ -0,0 +1,103 @@ +--- +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 +--- +<div>{{APIRef("DOM")}}{{SeeCompatTable}}</div> + +<p><span class="seoSummary"><strong><code>elementsFromPoint()</code></strong> は {{domxref("DocumentOrShadowRoot")}} インターフェイスのメソッドで、指定された座標 (ビューポートからの相対) にあるすべての要素の配列を返します。</span></p> + +<p>これは {{domxref("DocumentOrShadowRoot.elementFromPoint", "elementFromPoint()")}} メソッドと同じような方法で動作します。</p> + +<h2 id="Syntax" name="Syntax">構文</h2> + +<pre class="syntaxbox">const elements = document.elementsFromPoint(<var>x</var>, <var>y</var>);</pre> + +<h3 id="Parameters" name="Parameters">引数</h3> + +<dl> + <dt><code><var>x</var></code></dt> + <dd>点の水平座標です。</dd> + <dt><code><var>y</var></code></dt> + <dd>点の垂直座標です。</dd> +</dl> + +<h3 id="Return_value" name="Return_value">返値</h3> + +<p>{{domxref("Element")}} オブジェクトの配列です。</p> + +<h2 id="Example" name="Example">例</h2> + +<h3 id="HTML">HTML</h3> + +<pre class="brush: html"><div> + <p>Some text</p> +</div> +<p>Elements at point 30, 20:</p> +<div id="output"></div> +</pre> + +<h3 id="JavaScript">JavaScript</h3> + +<pre class="brush: js;highlight[1]">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>"; +}</pre> + +<p>{{EmbedLiveSample('Example', '420', '120')}}</p> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('Shadow DOM','#dom-documentorshadowroot-elementsfrompoint','elementsFromPoint()')}}</td> + <td>{{Spec2('Shadow DOM')}}</td> + </tr> + <tr> + <td>{{SpecName('CSSOM View', '#dom-document-elementsfrompoint', 'elementsFromPoint()')}}</td> + <td>{{Spec2('CSSOM View')}}</td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2> + +<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> + +<p>{{Compat("api.DocumentOrShadowRoot.elementsFromPoint")}}</p> + +<h2 id="See_also" name="See_also">関連情報</h2> + +<ul> + <li>{{DOMxRef("DocumentOrShadowRoot.elementFromPoint()")}}</li> + <li>{{DOMxRef("DocumentOrShadowRoot.msElementsFromRect()")}} {{Non-standard_Inline}}</li> +</ul> |