English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
insertBefore()このメソッドは、指定された既存のサブノードの前にサブノードを挿入するために使用されます。
もし指定されたサブオブジェクトがドキュメント内の既存のノードの参照である場合、insertBefore()はその現在の位置から新しい位置に移動させます(以下の「もっと詳しい例」を参照してください)。
使用appendchild()メソッドは指定された親ノードの子ノードリストの末尾にノードを追加します。
node.insertBefore(newNode, existingNode)
var newElem = document.createElement("h"3"); // 新しいhを作成します3要素 var newContent = document.createTextNode("Hi there"); // テキストコンテンツを作成します newElem.appendChild(newContent); // テキストノードを新しいhに追加します3 var body = document.body; // BODYを取得します body.insertBefore(newElem, body.childNodes[0]); // BODYの最初の子要素の前にHを挿入します3テストを見て‹/›
注意:テキストを持つ新しい要素を作成する場合は、テキストをTextノードとして作成し、それを要素に追加して、その後ドキュメントに要素を追加することを忘れないでください。
すべてのブラウザでinsertBefore()メソッドが完全にサポートされています:
メソッド | |||||
insertBefore() | は | は | は | は | は |
パラメータ | 説明 |
---|---|
newNode | 挿入するノードオブジェクト |
existingNode | 新しいノードをその前に挿入する子ノードが必要です。nullに設定すると、insertBeforeメソッドはnewnodeを末尾に挿入します |
返り値: | 挿入されたノードを表すNodeオブジェクト |
---|---|
DOMバージョン: | DOMレベル1 |
新しい<p>要素を作成して<div>要素に挿入します:
var para = document.createElement("p"); // 新しい<p>ノードを作成します var txt = document.createTextNode("これは段落です.");// テキストノードを作成します para.appendChild(txt);// テキストを<p>に追加します var div = document.getElementById("demo");// 「id=demo」を持つDIVを取得します div.insertBefore(para, div.childNodes[0]);// DIVの最初の子要素の前にPノードを挿入しますテストを見て‹/›
この例では、要素を現在の場所から新しい位置に移動します:
var elem = document.getElementById("myList2").lastElementChild; var list1 = document.getElementById("myList1"); list1.insertBefore(elem, list1.childNodes[0]);テストを見て‹/›
HTML DOM 参考情報:node.hasChildNodes()メソッド
HTML DOM 参考情報:node.appendChild()メソッド
HTML DOM 参考情報:node.removeChild()メソッド
HTML DOM 参考情報:node.replaceChild()メソッド
HTML DOM 参考情報:document.createElement()メソッド
HTML DOM 参考情報:document.createTextNode()メソッド
HTML DOM 参考情報:document.adoptNode()メソッド
HTML DOM 参考情報:document.importNode()メソッド