• 회원가입
  • 로그인
  • 구글아이디로 로그인

[DOM_Element] JS - replaceChild() 메서드 - 자식노드 대체 (= replaceChild메서드 = 리플레이스차일드 메서드)

목차
  1. replaceChild() 예제 - 자식노드 대체
  2. replaceChild() 정의
  3. replaceChild() 구문
  4. replaceChild() 예제 - 기존 <li> 요소를 새 <li> 요소로 대체

 

replaceChild() 예제 - 자식노드 대체

 

<ul id="hz"><li>홈짱닷컴</li><li>홈페이지제작</li><li>서버관리</li></ul>


<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var text = document.createTextNode("Homzzang.com");

  var list = document.getElementById("hz").childNodes[0];

  list.replaceChild(text, list.childNodes[0]);

}

</script>

 

결과보기 (홈짱닷컴 → Homzzang.com)

 

replaceChild() 정의

 

자식노드를 새 노드로 대체.

 


 

1.

새 노드는 문서의 기존 노드이거나 새 노드 생성 가능.

 

2. cf.

removeChild() 메서드 - 요소에서 자식노드 제거

 

3.

  • 모든 브라우저 지원.
  • Core Level 1 Node Object

 

 

 

replaceChild() 구문

 

node.replaceChild(newnode, oldnode)

 


[매개변수]

 

newnode

필수. 새 노드 지정. (node type)

 

oldnode

필수. 제거할 노드 지정. (node type)

 


[반환값]

 

대체된 노드를 나타내는 노드 객체 반환.

 

 

replaceChild() 예제 - 기존 <li> 요소를 새 <li> 요소로 대체

 

<ul id="hz"><li>HTML</li><li>CSS</li><li>JS</li></ul>


<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var emt = document.createElement("li");

  var txt = document.createTextNode("JavaScript");

  emt.appendChild(txt);


  var hz = document.getElementById("hz");

  hz.replaceChild(emt, hz.childNodes[2]);

}

</script>

 

결과보기 (JS → JavaScript)


[주의] - 아래처럼 줄바꿈 되어 있으면, 엉뚱한 곳이 바뀜.

(∵ 공백도 하나의 노드로 간주)

 

<ul id="hz">

    <li>HTML</li><li>CSS</li><li>JS</li>

</ul>


<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var emt = document.createElement("li");

  var txt = document.createTextNode("JavaScript");

  emt.appendChild(txt);


  var hz = document.getElementById("hz");

  hz.replaceChild(emt, hz.childNodes[2]);

}

</script>

 

결과보기 (CSS → JavaScript)

 



분류 제목
DOM_Event JS - dblclick 이벤트 (= ondblclick 속성) ★ - 마우스더블클릭이벤트
DOM_Event JS - drag 이벤트 (= ondrag 속성) - 마우스드래그이벤트 (IE9) ※ 드래그앤드롭
DOM_Event JS - dragend 이벤트 (= ondragend 속성) - 마우스드래그종료 (IE9)
DOM_Event JS - dragenter 이벤트 (= ondragenter 속성) - 드래그진입 (= 드래그엔터이벤트)
DOM_Event JS - dragleave -
DOM_Event JS - dragover 이벤트 (= ondragover 속성) -
DOM_Event JS - dragstart 이벤트 (= ondragstart 속성) - 마우스드래그시작 (IE9)
DOM_Event JS - drop 이벤트 (= ondrop 속성) -
DOM_Event JS - durationchange -
DOM_Event JS - ended -
DOM_Event JS - error 이벤트 (= onerror 속성) - 외부파일로드 중 에러발생시 실행 (= 에러 이벤트 …
DOM_Event JS - focus 이벤트 (= onfocus 속성) - 포커스이벤트발생
DOM_Event JS - focusin 이벤트 (= onfocusin 속성) - 해당요소(또는 자식요소) 포커스 될 때 이벤…
DOM_Event JS - focusout 이벤트 (= onfocusout 속성) - 해당요소(또는 자식요소) 포커스 잃을 때…
DOM_Event JS - fullscreenchange -
DOM_Event JS - fullscreenerror -
DOM_Event JS - hashchange -
DOM_Event JS - input 이벤트 (= oninput 속성) ★ - 입력이벤트 (= 인풋이벤트) (IE9)
DOM_Event JS - invalid -
DOM_Event JS - keydown 이벤트 (= onkeydown 속성) ★ - 키보드키누르기 (= 키보드키누름 = 키다…
32/67
목록
찾아주셔서 감사합니다. Since 2012