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

[DOM] JS - Node - 노드추가, 노드삭제, 노드변경 (= 노드생성, 노드제거, 노드교체)

※ 노드 = HTML 요소

 

노드생성 (=노드추가) - 맨마지막에 추가

 

<div id="homzzang">

    <p id="p1">홈짱닷컴</p>

    <p id="p2">Homzzang.com</p>

</div>


<script>

var p = document.createElement("p"); // P요소(=노드) 생성

var intro = document.createTextNode("홈페이지 제작관리"); // P요소에 넣은 내용 (= 텍스트노드 생성)

p.appendChild(intro); // P요소에 내용 넣기

var hz = document.getElementById("homzzang"); // 부모요소

hz.appendChild(p); // 부모요소에 생성한 P 요소 추가

</script>

 

결과보기

※ 새 요소 추가하려면 먼저 요소 (요소 노드) 생성 후, 기존 요소에 추가

 

 

노드생성 (= 노드추가) - 맨앞에 추가

 

<div id="homzzang">

    <p id="p1">홈짱닷컴</p>

    <p id="p2">Homzzang.com</p>

</div>


<script>

var p = document.createElement("p"); // P요소(=노드) 생성

var intro = document.createTextNode("홈페이지 제작관리"); // P요소에 넣은 내용 (= 텍스트노드 생성)

p.appendChild(intro); // P요소에 내용 넣기

var hz = document.getElementById("homzzang"); // 부모요소

var p1 = document.getElementById("p1");// 현재 맨 위 요소

hz.insertBefore(p,p1); // 생성한 P 요소를 맨 위 요소 P1 앞에 추가

</script>

 

결과보기

※ 맨 위에 추가하려면, 기존 맨 위 요소도 필요. 

insertBefore()

 

노드삭제 (= 노드제거)

 

<div id="homzzang">

    <p id="p1">홈짱닷컴</p>

    <p id="p2">Homzzang.com</p>

</div>


<script>

var hz = document.getElementById("homzzang"); // 부모요소

var p1 = document.getElementById("p1"); // 자식요소 (= 삭제할 요소)

hz.removeChild(p1); // 부모요소에서 자식요소 제거

</script>

 

결과보기

※ node.remove() 메서드는 IE 브라우저 모든 버전에서 작동 안 함.

※ DOM은 삭제대상의 부모요소 찾아야만 삭제대상 제거가능 (※ 부모 안 찾고는 삭제 못 함. ㅡㅡ;)

 

※ 위 핑크색 부분 코드를 아래 코드로 대체 가능. (보통. 아래 방식 사용)

 

<div id="homzzang">

    <p id="p1">홈짱닷컴</p>

    <p id="p2">Homzzang.com</p>

</div>


<script>

var p1 = document.getElementById("p1"); // 삭제대상

p1.parentNode.removeChild(p1); // 삭제대상의 부모노드 자동검색해 삭제대상 제거

</script>

 

결과보기

 

 

노드변경 (= 노드교체) - 새 요소 생성해 교체

 

<div id="homzzang">

<p id="p1">홈짱닷컴</p>

<p id="p2">Homzzang.com</p>

</div>


<script>

var hz = document.getElementById("homzzang"); // 부모요소

var p1 = document.getElementById("p1"); // 변경전대상

var p = document.createElement("p"); // 변경후대상

var text = document.createTextNode("홈짱닷컴 - 홈페이지 제작강의"); // 변경후대상에 넣을 내용

p.appendChild(text); // 변경후대상에 내용 장착

hz.replaceChild(p,p1); // 부모요소에게서 변경후대상 갖고 변경전대상을 교체. 

</script>

 

결과보기

※ DOM은 새 요소 생성해 노드변경할 때도 부모요소가 필요.

 

 

노드변경 (= 노드교체) - 텍스트만 변경


<div id="homzzang">

<p id="p1">홈짱닷컴</p>

<p id="p2">Homzzang.com</p>

</div>


<script>

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

p1.innerHTML = "홈짱닷컴 - 홈페이지 제작강의";

</script> 

 

결과보기

※ 텍스트만 변경할 땐, 부모요소 찾을 필요 없이, innterHTML 속성 이용해 바로 변경 가능.



분류 제목
String JS - concat() 메서드 ★ - 문자열결합 (= 문자열합치기 = concat메서드 = 컨캣메서드)
String JS - endsWith() 메서드 - 지정문자열로 끝나는지(=종료) 여부 (IE12이상)
String JS - fromCharCode() 메서드 - 유니코드를 문자열로 변환
String JS - includes() 메서드 ★ - 지정문자열포함여부 (= includes메서드 = 인클루드즈메서드)
String JS - indexOf() 메서드(문자열) ★ - 처음일치문자열위치찾기 (= 문자열포함검사 = 인덱스어브메서…
String JS - lastIndexOf() 메서드(문자열) ★ - 마지막일치문자열위치찾기 (= 문자열포함검사 = 라스…
String JS - localeCompare() 메서드 - 문자열순서비교
String JS - match() 메서드 ★ - 일치하는 문자열 반환 (= match메서드 = 매치메서드) ※ 정규식 …
String JS - repeat() 메서드 - 지정횟수만큼 문자열반복 (= 리피트)
String JS - replace() 메서드(String용) ★ - 문자열 대체 (= replace메서드 = 리플레이스…
String JS - search() 메서드 - 문자열위치찾기 ※ 문자열포함검사
String JS - slice() 메서드 - 문자열 자르기 (= 문자열 일부 추출 = slice메서드 = 슬라이스 메서…
String JS - split() 메서드 - 문자열 쪼개기 (= split메서드 = 스플릿 메서드) ※ 이메일숨기기 (…
String JS - startsWith() 메서드 - 지정문자열로 시작 여부 (IE12이상)
String JS - substr() 메서드 ★ - 문자열 자르기 - 문자열의 특정 위치 이후의 특정 길이 만큼 반환
String JS - substring() 메서드 ★ - 문자열 일부 추출 (= 문자열 자르기 = substring메서드…
String JS - toLocaleLowerCase() 메서드 - 로캘 소문자로 변환
String JS - toLocaleUpperCase() 메서드 - 로캘 대문자로 변환
String JS - toLowerCase() 메서드 - 소문자로변환
String JS - toString() 메서드 (문자열경우) - 문자열타입으로 변경 (= toString메서드 = 투스…
6/67
목록
찾아주셔서 감사합니다. Since 2012