XML DOM insertBefore()メソッド
❮ノードオブジェクト
例
次のコードフラグメントは「books.xml」をロードし、新しい<book>ノードを作成して、最後の<book>ノードの前に挿入します。
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var newNode =
xmlDoc.createElement("book");
var x =
xmlDoc.documentElement;
var y =
xmlDoc.getElementsByTagName("book");
document.getElementById("demo").innerHTML =
"Book
elements before: " + y.length + "<br>";
x.insertBefore(newNode, y[3]);
document.getElementById("demo").innerHTML
+=
"Book elements after: " + y.length;
}
上記のコードの出力は次のようになります。
Book elements before: 4
Book elements after: 5
定義と使用法
insertBefore()メソッドは、現在のノードの指定された子ノードの前に新しい子ノードを挿入します。
注:新しい子がすでにツリーにある場合は、最初に削除されます。
ブラウザのサポート
insertBefore()メソッドは、すべての主要なブラウザーでサポートされています。
構文
nodeObject.insertBefore(newchild,existingnode)
パラメーター
Parameter | Type | Description |
---|---|---|
newchild | Node object | Required. The new child node to insert |
existingnode | Node object | Required. The node to insert the new child node before. If existingnode is null, insert newchild at the end of the list of children |
戻り値
Type | Description |
---|---|
Node object | The inserted node |
技術的な詳細
DOMバージョン | コアレベル1ノードオブジェクト。DOMレベル3で変更 |
---|
❮ノードオブジェクト