- 문서 객체 모델(Document Object Model)
- 객체 지향 모델로써 구조화된 문서를 표현하는 형식
우리가 사용할 것은 HTML DOM!
document.getElementById()
document.getElementsByClassName()
document.getElementsByName()
document.querySelectorAll()
document.querySelector()
document.createElement() // HTML요소를 생성
document.write() // TEXT만 출력!!
요소.onclick = function(){}
<!DOCTYPE html>
<html>
<head>
<title>TITLE!!</title>
</head>
<body>
<article>
<header>HEADER!!</header>
<section>
<header>SECTION HEADER!</header>
section1
</section>
</article>
</body>
</html>
위와 같은 코드가 있다면
이런 순서가 DOM 트리 구조!
document.getElementById("")//HTML 태그
document.getElementsByClassName("") // 클래스
document.getElementsByTagName("") // ID
document.getElementsByName("") // 속성값
var item = document.getElementById("even");
item.style.color = "red";
var str = document.getElementById("text");
str.innerHTML = "바꿀 내용!!";
노드 트리의 모든 노드는 서로 계층적 관계를 맺고 있다.
//노드의 값 접근(이름)
var node1 = document.childNodes[1];//document의 자식 노드들 중 두번째 노드를 node1 변수에 할당
var node2 = node1.childNodes[2] ;
var node3 = node2.childNodes[1];
document.write(node1.nodeName)
document.write(node2.nodeName)
document.write(node3.nodeName)
// 노드의 값 접근(값)
//만약 id명이 apple인 태그가 있다고 가정하자!
var apple_node = document.getElementById("apple");
apple_node.firstChild.nodeValue = "apple_pie"; // 첫 번째 자식 노드의 값을 선택 ;
var apple_node = document.getElementById("apple").childNodes[0];
var apple_node_value = apple_node.nodeValue;
var apple_node_type = apple_node.nodeType;
document.write(apple_node_value);
document.write(apple_node_type);
<p onclick = "changeText(this)">클릭!</p>
<script>
function changeText(e){
e.innterText = "바꾼 내용!;
}
</script>
선택한요소.addEventListener("click", 실행함수());