DOM:element.cloneNode
出典: MDC
目次 |
[編集] 概要
現在のノードの複製を返します。
[編集] 構文
dupNode = element.cloneNode(deep);
-
deepは必須の真偽値で、複製ノードが深い複製かどうかを示します (下記の注記を参照)。
[編集] 例
p = document.getElementById("para1");
p_prime = p.cloneNode(true);
[編集] 注記
ノードを複製すると、そのノードのすべての属性とその値がコピーされます。
cloneNode によって返される複製ノードは、appendChild や同種のメソッドによってドキュメントの一部である他のノードに追加されるまでは、ドキュメントの一部ではありません。
deep が false に設定されていると、どの子ノードも複製されません。 また、そのノードに含まれるどのテキストも複製されません。 テキストは 1 つか複数の子 Text ノードに含まれているからです。
deep が true に評価できる場合、サブツリー全体 (子 Text ノードにあるテキストを含む) もコピーされます。 IMG や INPUT 要素などの空ノードの場合には deep を true と false のどちらに設定してもかまいませんが、必ず何らかの値を与えなければなりません。
cloneNode を使用するとドキュメント内で要素の id が重複する可能性があることに注意してください!
別のドキュメントに追加するためにノードを複製する場合は、代わりに importNode を使用してください。