JavaScript

[DOM_Element] JS - appendChild() 메서드 - 요소에 마지막 자식요소생성 (= 마지막 자식요소추가 = appendChild메서드 = 어펜드차일드메서드) ※자식요소 자동생성

appendChild() 예제

 

<ul id="code">

  <li>HTML</li>

  <li>CSS</li>

</ul>


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


<script>

function hz() {

  var node = document.createElement("LI"); // 요소 생성

  var textnode = document.createTextNode("JS"); // 내용 생성

  node.appendChild(textnode); // 요소에 내용 결합

  document.getElementById("code").appendChild(node); // 기존요소에 생성요소 결합

}

</script>

 

결과보기 

 

 

appendChild() 정의

 

1.

아래 용도로 사용 가능
① 노드를 어떤 노드의 마지막 자식으로 추가.
② 어떤 요소를 한 요소에서 다른 요소로 이동시킬 때도 사용.

② 어떤 요소에 텍스트 추가할 때 사용


2.
텍스트 가진 단락을 문서에 추가하려면 먼저 text 생성 노드 이용해 text 생성 필요.
text 생성해 단락에 붙인 다음, 그 단락을 문서에 추가.

 

3.

노드를 어떤 노드의 첫 자식으로 추가하려면 아래 코드 이용.
insertBefore()

 

5.
주요 최신 브라우저 모두 지원.

 

※ 노드 (Node) : 네트워크에서 연결 포인트 혹은 데이터 전송의 종점 혹은 재분배점

 

 

 

appendChild() 구문

 

node1.appendChild(node2)

 

 

[매개변수]

node2

필수. 부착할 자식 노드 객체. (예) <li>JS</li>

 

 

cf.
node1
자식노드인 node2가 추가되는 부모 요소 (예) <ul id="code"> ~ </ul>

 

 

 

appendChild() 예제1 - 자식요소 이동

 

<ul id="code1"><li>HTML</li><li>CSS</li></ul>

<ul id="code2"><li>PHP</li><li>SQL</li><li>JS</li></ul>


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


<script>

function hz() {

  var node = document.getElementById("code2").lastChild;

  document.getElementById("code1").appendChild(node);

}

</script>

 

결과보기

※ code2의 마지막 자식을 code1의 마지막 자식으로 이동

 

 

appendChild() 예제2 - 요소 생성 후 텍스트 추가. 생성요소를 다른요소 자식으로 추가

 

<style>

#box {

  border: 1px solid silver;

  margin-bottom: 10px;

}

</style>


<div id="box">

홈짱닷컴

</div>


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


<script>

function hz() {

  var txt = document.createElement("P");

  txt.innerHTML = "Homzzang.com";

  document.getElementById("box").appendChild(txt);

}

</script>

 

결과보기

 

 

appendChild() 예제3 - 요소 생성 후 텍스트 추가. 생성요소를 body 태그에 바로 추가

 

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


<script>

function hz() {

  var x = document.createElement("P");

  var t = document.createTextNode("홈짱닷컴 Homzzang.com");

  x.appendChild(t);

  document.body.appendChild(x);

}

</script>

 

 

appendChild() 예제 - 클래스 가진 자식요소 자동생성

 

<div class="grid-container">

</div>


<script>

// 아이템 1 ~ 16 생성

for (let i = 1; i <= 16; i++) {

  const div = document.createElement("div");

  div.textContent = i;

  div.classList.add(`item${i}`);

  document.querySelector(".grid-container").appendChild(div);

}

</script>

 

 

 

관련 메서드

 

element.hasChildNodes() - 자세히 보기

element.insertBefore()

element.removeChild()

element.replaceChild()


document.createElement()

document.createTextNode()

document.adoptNode()

document.importNode()

 


방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

분류 제목
DOM_Document JS - readyState 속성 - 현재웹문서 로딩상태 반환 (= readyState속성 = 레디스테이트속…
DOM_Document JS - referrer 속성 ★ - 접속경로 (= 리퍼러) 반환
DOM_Document JS - removeEventListener() 메서드 ★ - 이벤트핸들러를 웹문서에서 제거 (IE9 이상)
DOM_Document JS - renameNode() 메서드 - Element 및 Attr 유형의 노드 이름 변경 (지원 X)
DOM_Document JS - scripts -모든 스크립트태그 모음
DOM_Document JS - strictErrorChecking 속성 - 엄격한오류검사 설정/반환 (= 엄격한에러체크 = 스트릭…
DOM_Document JS - title - 타이틀 (=문서제목) 설정/반환
DOM_Document JS - document.URL 속성 - 웹문서주소 (= document.URL속성 = 다큐먼트유알엘속성/도…
DOM_Document JS - write() 메서드 - 내용쓰기 (= 내용입력) : 줄바꿈 X
DOM_Document JS - writeln() 메서드 - 내용쓰기 (= 내용입력) : 줄바꿈 X (= writeln메서드 = 라…
DOM_Element JS - accessKey 속성 - 요소접근키 (= accessKey속성 = 액세스키속성) ※ 요소접근단축키
DOM_Element JS - addEventListener() 메서드 ★ - 요소에 이벤트 걸기. (addEventListene…
DOM_Element JS - appendChild() 메서드 - 요소에 마지막 자식요소생성 (= 마지막 자식요소추가 = appe…
DOM_Element JS - attributes 속성 - 요소의 속성들 (= 요소속성모음 = attributes속성 = 어트리뷰…
DOM_Element JS - blur() 메서드 - 포커스 제거. (= blur메서드 = 블러 메서드) ※ 링크 클릭 잔상 제…
35/89
목록
  • 채팅방
  • 필독
1. 채팅창 헤드에서 접속자 확인 2. 닉네임 클릭해 1:1 채팅 가능 3. 닉네임 클릭해 귓속말 가능 4. 닉네임 클릭해 호출하기 가능 5. 우하단 클릭해 환경 설정 가능 6. 의뢰글 작성 후 의뢰 상담 가능 7. 질문글 작성 후 질문 상담 가능 8. 채팅방에 개인정보 입력 금지 9. 채팅방에 광고 욕설 비방 금지
 홈  PC버전 로그인 일본어
웹디자인언어
서버관리언어
고급코딩언어
그누보드
제작의뢰
Q&A
커뮤니티
웹유틸
회원센터
홈짱 PC버전 로그인