.appendChild()

指定した要素の子ノードのリストの最後に、ノードを挿入します。 もし追加するために指定したノードが既に存在するノードであれば、現在の親ノードから削除され、 親ノードの新しい子ノードとして追加されます。

文法

var child = element.appendChild(child);

elementは親となる要素(Element)です。

引数 説明
child 要素に追加するノードを指定します。 また、このノードへの参照が戻り値にもなります。

// 新しいP要素が作られ、bodyの最後に追加されます。
var p = document.createElement("p");
document.body.appendChild(p);

注意事項

もし、追加するノードが既にdocument内に存在するノードの参照であった場合、appendChildは、 それを現在の位置から新しい位置に移動します。そのため、元の位置にあったノードは実質削除されることになります。

これはdocument内に同時に2つの場所に存在できないことを意味します。 そのため、まず削除が行われた後に、新しい位置に追加されます。

.cloneNodeを使用して、 新しい親ノードに追加される前に、そのノードを複製を作ることが可能です。 (cloneNodeによる複製は、同期しないことに注意してください。)

このメソッドは、異なるdocumentの間でノードを移動することは出来ません。 もし、異なるドキュメントでノードを追加したい場合(例えば、Ajaxリクエストの結果を表示するなど)、 document.importNodeを使用しなければいけません。

appendChild()は、DOMを使用したWebプログラミングの基盤となるメソッドの1つです。 appendChild()メソッドは、documentのDOM構造に新しいノードを挿入します。 これはWebページ構築プログラミングの中心となるプロセスである「1.作成」と「2.追加」の「2.追加」に該当するものです。

仕様

関連項目

 Back to top

© 2017 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.

このページは、ページトップのURL先のMozilla Developer Network(以下、MDN)のコンテンツを翻訳した内容を基に構成されています。 構成について異なる点も含まれますので、下記の項目を確認し、必要に応じて元のコンテンツをご確認ください。 もし、誤訳などの間違いを見つけましたら、 @tomofまで教えていただければ幸いです。

  • 特定のブラウザに特化しすぎている情報やあまりにも古い情報、 または試験的に導入されているようなAPIや機能については、省略していることがあります。
  • 例やデモについて、実際にページ内で動作させる関係で一部ソースコードを変更している場合や、 その例で使用しているコンテンツの単語や文章などを日本人向けに変更しいてる場合があります。
  • MDNの更新頻度が高いため、元のコンテンツと比べ情報が古くなっている可能性があります。
  • "訳注:"などの断わりを入れた上で、日本人向けの情報の追記を行っている事があります。