JavaScript/3. HTML DOM과 Document
Day 46 : HTML 문서의 동적 구성
pancakemaker
2021. 12. 21. 16:54
1. DOM 객체 동적 생성 : document.createElement()
var newDIV = document.createElement("div");
newDIV.innerHTML = "새로 생성된 DIV입니다.";
newDIV.setAttribute("id", "myDiv");
newDIV.style.backgroundColor = "yellow";
2. DOM 트리에 삽입 : appendChild()
부모.appendChild(DOM객체); //DOM 객체를 부모의 마지막 자식으로 삽입
부모.insertBefore(DOM객체 [, 기준자식]); //DOM 객체를 부모의 자식 객체 중 기준자식 앞에 삽입
var p = document.getElementById("p"); //<p "id=p"> 태그의 DOM 객체 찾기
p.appendChild(newDiv);
3. DOM 객체의 삭제 : removeChild()
var removedObj = 부모.removeChild(떼어내고자 하는 자식 객체);
var myDiv = document.getElementById("myDiv");
var parent = myDiv.parentElement; //부모 객체 알아내기
parent.removeChild(myDiv); //부모로부터 myDiv 객체 떼어내기
<예시>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>문서의 동적 구성</title>
<script>
function createDIV() {
var obj = document.getElementById("parent");
var newDIV = document.createElement("div");
newDIV.innerHTML = "새로 생성된 DIV 입니다.";
newDIV.setAttribute("id", "myDiv");
newDIV.style.backgroundColor = "yellow";
newDIV.addEventListener("click",
function () {
var p = this.parentElement; //부모 HTML 태그 요소
p.removeChild(this); //자신을 부모로부터 제거
});
obj.appendChild(newDIV);
}
</script>
</head>
<body id="parent">
<h3>DIV 객체를 동적으로 생성, 삽입, 삭제하는 예제</h3>
<hr>
<p>DOM 트리에 동적으로 객체를 삽입할 수 있습니다.
createElement(), appendChild(), removeChile() 메소드를 이용하여 새로운 객체를 생성, 삽입, 삭제하는 예제입니다.</p>
<a href="javascript:createDIV()">DIV 생성</a><p><p>
</body>
</html>