aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasahiro Fujimoto <mfujimot@gmail.com>2021-11-04 20:19:23 +0900
committerMasahiro FUJIMOTO <mfujimot@gmail.com>2021-11-13 15:40:47 +0900
commitd442036b47072f6065eb70d07baecde849189c09 (patch)
tree52c0c577962c0ef99974629353bf3ceae12e2f0a
parent81c6f63737fbf4867d0376d95f7b6f0df91b0f29 (diff)
downloadtranslated-content-d442036b47072f6065eb70d07baecde849189c09.tar.gz
translated-content-d442036b47072f6065eb70d07baecde849189c09.tar.bz2
translated-content-d442036b47072f6065eb70d07baecde849189c09.zip
Web/API/Document/importNode を更新
- 2021/09/15 時点の英語版に同期
-rw-r--r--files/ja/web/api/document/importnode/index.md135
1 files changed, 53 insertions, 82 deletions
diff --git a/files/ja/web/api/document/importnode/index.md b/files/ja/web/api/document/importnode/index.md
index 5484b1b0a0..9bf207226a 100644
--- a/files/ja/web/api/document/importnode/index.md
+++ b/files/ja/web/api/document/importnode/index.md
@@ -5,105 +5,76 @@ tags:
- API
- DOM
- Document
- - Method
- - Node
- - Reference
- - copy
+ - メソッド
+ - ノード
+ - リファレンス
+ - コピー
- importNode
+browser-compat: api.Document.importNode
translation_of: Web/API/Document/importNode
---
-<div>{{APIRef("DOM")}}</div>
+{{APIRef("DOM")}}
-<p><span class="seoSummary">{{domxref("Document")}} オブジェクトの <strong><code>importNode()</code></strong> メソッドは、後で現在の文書に挿入するために、他の文書から {{domxref("Node")}} または {{domxref("DocumentFragment")}} の複製を作成します。</span></p>
+{{domxref("Document")}} オブジェクトの **`importNode()`** メソッドは、後で現在の文書に挿入するために、他の文書から {{domxref("Node")}} または {{domxref("DocumentFragment")}} の複製を作成します。
-<p>インポートされたノードは、まだ文書ツリーには含まれません。これを含めるには、 {{domxref("Node.appendChild", "appendChild()")}} や {{domxref("Node.insertBefore", "insertBefore()")}} のような挿入メソッドを、現在の文書ツリーに<em>存在する</em>ノードに対して呼び出す必要があります。</p>
+インポートされたノードは、まだ文書ツリーには含まれません。これを含めるには、 {{domxref("Node.appendChild", "appendChild()")}} や {{domxref("Node.insertBefore", "insertBefore()")}} のような挿入メソッドを、現在の文書ツリーに*存在する*ノードに対して呼び出す必要があります。
-<p>{{domxref("document.adoptNode()")}} とは異なり、元の文書から元のノードは削除されません。インポートされたノードは元のノードの複製です。</p>
+{{domxref("document.adoptNode()")}} とは異なり、元の文書から元のノードは削除されません。インポートされたノードは元のノードの複製です。
-<h2 id="Syntax" name="Syntax">構文</h2>
+## 構文
-<pre class="syntaxbox notranslate">const <var>importedNode</var> = document.importNode(<var>externalNode</var> [, <var>deep</var>]);
-</pre>
+```js
+importNode(externalNode)
+importNode(externalNode, deep)
+```
-<h3 id="Parameters" name="Parameters">引数</h3>
+### 引数
-<dl>
- <dt><code><var>externalNode</var></code></dt>
- <dd>現在の文書にインポートする、外部の {{domxref("Node")}} または {{domxref("DocumentFragment")}} です。</dd>
- <dt><code><var>deep</var></code> {{optional_inline}}</dt>
- <dd>論理値で、 <code><var>externalNode</var></code> の DOM サブツリー全体をインポートするかどうかを制御します。
- <ul>
- <li><code><var>deep</var></code> が <code>true</code> に設定された場合、 <code><var>externalNode</var></code> およびその子孫全てが複製されます。</li>
- <li><code><var>deep</var></code> が <code>false</code> に設定された場合、 <code><var>externalNode</var></code> のみがインポートされます — 新しいノードには子ノードはない状態になります。</li>
- </ul>
+- `externalNode`
+ - : 現在の文書にインポートする、外部の {{domxref("Node")}} または {{domxref("DocumentFragment")}} です。
+- `deep` {{optional_inline}}
- <div class="note">
- <p><strong>中:</strong> DOM4 仕様書では、 <code><var>deep</var></code> 羽オプションの引数で、既定値は <code>true</code> でした。</p>
+ - : 論理値のフラグで、既定値は `false` であり、`externalNode` の DOM サブツリー全体をインポートするかどうかを制御します。
- <p><strong>最新の仕様書ではこの既定値が変更されました。</strong>新しい既定値は <strong><code>false</code></strong> になりました。</p>
+ - `deep` が `true` に設定された場合、 `externalNode` およびその子孫全てが複製されます。
+ - `deep` が `false` に設定された場合、 `externalNode` のみがインポートされます — 新しいノードには子ノードはない状態になります。
- <p><strong>おすすめの方法:</strong> これは現在もオプションの引数ですが、常に <code><var>deep</var></code> 引数を渡すことが後方互換性<em>および</em>前方互換性には有用です。</p>
+### 返値
- <ul>
- <li>Gecko 28.0 {{geckoRelease(28)}} では、コンソールでこの引数を省略しないよう開発者に警告しています。</li>
- <li>Gecko 29.0 {{geckoRelease(29)}}) 以降、深いクローンではなく浅いクローンが既定値になっています。</li>
- </ul>
- </div>
- </dd>
-</dl>
+インポートする側の文書のスコープにコピーされた `importedNode` です。
-<h3 id="Return_value" name="Return_value">返値</h3>
+> **Note:** `importedNode` の {{domxref("Node.parentNode")}} は `null` になります。まだ文書ツリーに挿入されていないからです。
-<p>インポートする側の文書のスコープにコピーされた <code><var>importedNode</var></code> です。</p>
+## 例
-<div class="blockIndicator note">
-<p><strong>注:</strong> <code><var>importedNode</var></code>'s {{domxref("Node.parentNode")}} は <code>null</code> になります。まだ文書ツリーに挿入されていないからです。</p>
-</div>
-
-<h2 id="Example" name="Example">例</h2>
-
-<pre class="brush: js notranslate">const iframe = document.querySelector("iframe");
+```js
+const iframe = document.querySelector("iframe");
const oldNode = iframe.contentWindow.document.getElementById("myNode");
const newNode = document.importNode(oldNode, true);
document.getElementById("container").appendChild(newNode);
-</pre>
-
-<h2 id="Notes" name="Notes">注</h2>
-
-<p>{{page("/ja/docs/Web/API/Document/adoptNode", "Notes")}}</p>
-
-<h2 id="Specifications" name="Specifications">仕様書</h2>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">仕様書</th>
- <th scope="col">状態</th>
- <th scope="col">備考</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>{{SpecName("DOM WHATWG", "#dom-document-importnode", "document.importNode()")}}</td>
- <td>{{Spec2("DOM WHATWG")}}</td>
- <td></td>
- </tr>
- <tr>
- <td>{{SpecName("DOM2 Core", "core.html#Core-Document-importNode", "document.importNode()")}}</td>
- <td>{{Spec2("DOM2 Core")}}</td>
- <td>初回定義</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>
-
-<p>{{Compat("api.Document.importNode")}}</p>
-
-<h2 id="See_also" name="See_also">関連情報</h2>
-
-<ul>
- <li>{{domxref("document.adoptNode()")}} このメソッドととても似た動作を行う</li>
- <li>{{domxref("Node.appendChild()")}}</li>
- <li>{{domxref("Node.insertBefore()")}}</li>
-</ul>
+```
+
+## メモ
+
+外部文書からのノードは、現在の文書に挿入する前に、次のいずれかの状態にしなければなりません。
+
+- {{domXref("document.importNode()")}} でクローンする、または
+- {{domXref("document.adoptNode()")}} で移行する
+
+> **Note:** Firefox は今のところこのルールを強制していませんが、将来の互換性を改善するために、このルールに従うことを強く推奨します。
+
+{{domXref("Node.ownerDocument")}} の問題に関して詳しくは、W3C DOM FAQ を参照してください。
+
+## 仕様書
+
+{{Specifications}}
+
+## ブラウザーの互換性
+
+{{Compat}}
+
+## 関連情報
+
+- {{domxref("document.adoptNode()")}} このメソッドととても似た動作を行う
+- {{domxref("Node.appendChild()")}}
+- {{domxref("Node.insertBefore()")}}