XML DOM insertBefore() 메서드

정의와 사용법

insertBefore() 현재 노드의 지정된 서브 노드 앞에 새 서브 노드를 삽입하는 메서드.

주의:newchild가 이미 트리에 있으면 먼저 제거합니다.

문법

nodeObject.insertBefore(newchild,existingnode,

)

) 설명
newchild 必需. Node 객체. 삽입할 새 서브 노드.
existingnode

必需. Node 객체. 새 서브 노드를 삽입할 노드.

기존 노드가 비어 있으면 새 서브 노드를 서브 노드 목록의 마지막에 삽입합니다.

기술 세부 사항

DOM 버전: Core Level 1 Node Object. 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;
}

직접 시험해 보세요

브라우저 지원

크롬 에지 파이어폭스 사파리 오페라
크롬 에지 파이어폭스 사파리 오페라
지원 지원 지원 지원 지원

모든 주요 브라우저가 지원합니다 insertBefore() 메서드.