DOM은 화면에 보이는 HTML 코드를 DOM Tree(태그의 뼈대)로 구성한 객체지향 모델이다. 브라우저는 HTML코드를 해석해서 계층화된 Tree 형태의 구조화된 Node들을 가지고 있는 DOM을 생성한다. DOM은 JS가 HTML 소스에 접근하여 내용을 가져오거나 변경하기 위한 통로(인터페이스)의 역할을 한다.
document.querySelector()
와 같은 형태document.querySelector("#selector") //아이디명이 selector인 태그 가져오기 document.querySelector('[data-name='box']'); //특정 속성을 가진 태그 가져오기 document.querySelector("#selector").style.background = "gray"; //선택한 아이디의 css 스타일 변경
document.querySelectorAll('#selector>li'); //selector 아이디 안에 있는 모든 li 태그 배열형식으로 가져오기
document.getElementById('box');
document.getElementByClassName("box"); //한가지 클래스도 html컬렉션으로 리턴됨
document.getElementByTagName("h1"); //모든 h1 태그를 html컬렉션으로 리턴
(HTML 속성 = src, href 등)
img.getAttribute("src"); //img태그의 src속성 가져오기
img.setAttribute("src","./imges/main.jpg"); //img태그의 src속성을 main 이미지로 변경하기
input.removeAttribute("onclick"); //input태그의 onclick속성 삭제
console.log($cont.hasAttribute("id"));
(css 속성 = width, height, color, line-height, background-color 등)
$cont.style.setProperty('width','300px');
<script>
let container = document.getElementById("container");
container.addEventListener("click", function(){},false);
// container 변수를 클릭했을 때 함수이벤트를 실행한다.
// function() : 익명함수 형태의 이벤트핸들러도 가능
document.getElementById('thmb').addEventListener('click', fuction(){console.log("썸네일");})
// thmb아이디를 클릭했을 때 콘솔에 출력되는 이벤트 실행
</script>