: Document Object Model
html을 쉽게 접근하여 수정할 수 있도록 만든 모델
+) console.log() : 콘솔 출력
화면의 html 문서를 불러옴
document.getElementById('js')
: id가 'js'인 태그를 불러옴
document.getElementsByClassName('클래스명')[배열]
: 클래스명 일치하는 [배열]번째 객체 선택
document.getElementsByTagName('태그이름');
: 해당 태그의 모든 요소 노드들을 탐색하여 반환 (여러 개면 배열로 반환)
: css 선택자를 만족시키는 하나의 요소 노드를 탐색해 반환
첫 번째 Element
를 반환 (없으면 NULL
)NodeList
를 반환+) css 선택자 ?
.[class] 의 '.' 또는 #[id]의 '#' 같은 선택자
: HTML 태그의 안쪽 내용 불러옴
document.getElementById('js').innerHTML
: js태그의 안쪽 내용을 불러옴 (안쪽내용 : <태그>안쪽내용</태그>)
document.getElementById('count').innerHTML = content.length;
: count 태그의 안쪽 내용을 content.length로 넣기
예시
[html]
<ul id="animals">
<li class="animal">lion</li>
<li class="animal">tiger</li>
<li class="animal">bear</li>
</ul>
[js]
const animals = documentgetElementById("animals");
animals.innerHTML += "<li class="animal">cat</li>"; //cat 추가 가능
input
태그에 들어간 입력 값을 가져옴: 특정 요소에 class 추가
: 사용자가 해당 요소에 커스텀 속성을 추가한 객체
+) dataset 속성의 값은 개수 제한이 없다
예시
[html]
<ul class="list">
<li class="tab-button" data-id="0">Dog</li>
<li class="tab-button" data-id="1">Tiger</li>
<li class="tab-button" data-id="2">Bear</li>
</ul>
[js]
document.querySelectorAll('.list')[0].addEventListener("click",function(e){
tabBtn(e.target.dataset.id);
});
: 이벤트 발생 시 이벤트 정보를 담고 있는 동적 객체