document.adoptNode()

外部ドキュメントからノードを取り込みます。ノードとそのサブツリーは、(もしあれば) 元あったドキュメントから削除され、ownerDocument が現在のドキュメントに変更されます。そして、そのノードが現在のドキュメントに挿入できるようになります。

Gecko 1.9 (Firefox 3) からサポート

構文

node = document.adoptNode(externalNode);
node
これは、取り込まれて現在のドキュメントで使用できるようになったノードです。 この新しいノードはまだドキュメントツリーに挿入されていないので、parentNodenull です。
externalNode
これは、取り込む対象となる他のドキュメントのノードです。

FIXME:

注記

一般に、異なる実装からのノードを取り込もうとすると adoptNode の呼び出しに失敗する可能性がありますが、ブラウザの実装においてこれが問題となることはないでしょう。

外部ドキュメントからのノードは、現在のドキュメントに挿入する前に document.importNode() を使ってクローンを作る (あるいは document.adoptNode() を使って取り込む) べきです。Node.ownerDocument 問題の詳細については W3C DOM FAQ を参照してください。

Firefox では現在このルールを強制していません。Firefox 3 の開発中には強制していた時期もありましたが、このルールを強制すると多くのサイトが機能しなくなってしまうため取りやめになりました。 将来的な互換性を高めるため、Web 開発者にはこのルールに従ってコードを修正することを推奨します。

仕様

参照

ドキュメントのタグと貢献者

 このページの貢献者: Marsf, fscholz, AshfaqHossain, ethertank, Sheppy, Shoot
 最終更新者: Marsf,