728x90
★ DOM, Document Object Model
- BOM > name 사용, id/class 인식 불가능
- DOM > name/id/class 모두 사용.(name 비권장)
- BOM 다음 버전
- 모든 태그 조작 가능
- 기능 풍부
- 태그 검색 도구 > 풍부
- DOM LEVEL 1 > DOM LEVEL 2 > DOM LEVEL 3
- DOM LEVEL 0(BOM)
- DOM > BOM 확장 : DOM의 모든 기능을 BOM의 document 내부에 구현해놨다.
■ DOM > 태그 검색(식별자)
- 1. id 검색
document.getElementById('id')
- 2. class 검색
document.getElementByClassName('class')
- 3. name 검색
document.getElementByName('name')
- 4. 태그명 검색
document.getElementByTagName('tag')
- 5. CSS 선택자 검색
document.querySelector('selector')
document.querySelectorAll('selector')
■ 검색 ex)
- 1. id 검색
// <input type="text" name="txt1" id="txt1" class="txt">
// BOM
window.document.form1.txt1.value = 'BOM';
// DOM
document.getElementById('txt2').value = 'DOM';
//태그를 BOM으로 검색하던, DOM으로 검색하던, 검색 결과는 동일하다
alert(document.form1.txt1 === document.getElementById('txt1'));
- 2. class 검색
//클래스를 검색
let txt = document.getElementsByClassName('txt');
console.log(txt.length);
for (let i=0; i<txt.length; i++) {
txt[i].value = i;
}
- 3. name 검색
//name 검색
document.getElementsByName('txt1')[0].value = '홍길동';
- 4. 태그명 검색
//태그명 검색
let input = document.getElementsByTagName('input');
for(let i=0; i<input.length; i++) {
input[i].value = i;
}
- 5. CSS 선택자 검색
//CSS 선택자 사용
document.querySelector('#txt1').value = 'CSS';
alert(document.querySelectorAll('.txt').length);
728x90
'웹페이지' 카테고리의 다른 글
JAVASCRIPT STEP 36 - AXIS (0) | 2023.04.26 |
---|---|
JAVASCRIPT STEP 35 - Content (0) | 2023.04.26 |
JAVASCRIPT STEP 33 - Constructor (0) | 2023.04.26 |
JAVASCRIPT STEP 32 - Function (0) | 2023.04.26 |
JAVASCRIPT STEP 31 - Timer 예제2 (0) | 2023.04.25 |