XML DOM insertBefore() メソッド
定義と使用方法
insertBefore()
メソッドは現在のノードの指定された子ノードの前に新しい子ノードを挿入します。
注意:newchild が木の中にすでにある場合、まずそれを削除します。
構文
nodeObject.insertBefore(newchild,existingnode,
)
) | 説明 |
---|---|
newchild | 必須。Node オブジェクト。挿入する新しい子ノード。 |
existingnode |
必須。Node オブジェクト。新しい子ノードを挿入する前にその前に挿入するノード。 既存のノードが空であれば、新しい子ノードを子ノードリストの末尾に挿入します。 |
技術的詳細
DOM バージョン: | Core Level 1 Node オブジェクト。DOM Level 3 で修正。 |
---|---|
返り値: | Node オブジェクト。挿入されるノード。 |
例
以下のコードは "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; }
ブラウザサポート
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
サポート | サポート | サポート | サポート | サポート |
すべての主要ブラウザがサポートしています insertBefore()
メソッド。