22.04.13
document.querySelector(".myDivClass")
document.querySelector("#myDivClass")
document.querySelector("div")
document.getElementById("myDivId")
document.getElementById("myDivClass")
선택된 Element의 클래스명들을 반환
classList.add(클래스명) 해당 Element에 클래스명 추가
classList.remove(클래스명) 해당 Element에 클래스명 삭제
classList.toggle(클래스명) 해당 Element에 클래스명이 존재하면 추가하고, 없으면 제거
선택된 Element가 어떠한 이벤트를 가질 때 뒤의 함수가 호출
document.getElementById("button").addEventListener("click", function(){
//button이 클릭될 때 함수 호출
});
(”event”, function(){})
아래는 "event" 넣을 수 있는 이벤트 들
click 클릭 시 (마우스 버튼에서 손가락을 땐 순간)
mouseenter 마우수를 요소 위에 올리면
mouseover 마우스를 요소 위에 올리면 (자식 Element도 영향을 받음)
mouseout 마우스가 요소 밖으로 벗어날 때
mousedown 클릭 하고 버튼에서 손가락을 때기 전
focus 포커스가 갔을 때
keypress 키를 누르는 순간에 발생, 그리고 누르고 있는 동안 계속 발생
keydown 키를 누를 때
keyup 키를 눌렀다가 떼는 순간
submit 제출 할때
load 웹 페이지 소스가 다운로드 되었을 때
resize 창크기를 조절 할 때
scroll 스크롤바, 마우스 휠, up, down 버튼으로 스크롤 할 시
unload 링크를 클릭해서 다른 페이지로 이동하거나 브라우저나 브라우저 탭을 닫았을 때
change form 필드의 상태가 변경 되었을 때
a 태그 또는 submit 태그는 눌렀을 때 고유의 동작으로 페이지를 이동시키거나, 리로드 되거나, form 안에 input 값을 전송하는 동작을 하는데 이걸 중지시키는 역할을 한다.
window 객체는 웹 브라우저의 창을 가르키며, window 객체를 이용하여 브라우저를 조작 할 수 있다.
창을 닫거나 열고, 좌표값 등을 다룰 수 있다.
Document Object Model
appendChild(Element) : 선택한 Element의 자식 Element 마지막에 추가
remove() : 선택된 Element 삭제
removeChild(삭제할 Element) : 선택된 Element의 자식 Element 삭제
createElement(Element) : Element 생성, 그 후 appendChild()로 추가해줘야 함
firstChild/lastChild : first면 첫번째, last면 마지막 자식 Element 반환
function myFunction() {
const div = document.createElement('div');
div.innerHTML = '이것이 추가될 문장입니다.';
document.querySelector('#myDIV').appendChild(div);
}
위 코드는 함수를 호출할 때마다 같은 div 를 id = myDIV 태그의 자식으로 생성한다.
const div = document.createElement('div');
function myFunction() {
div.innerHTML = '이것이 추가될 문장입니다.';
document.querySelector('#myDIV').appendChild(div);
}
위 코드는 함수 바깥에서 div를 선언 해주고 있기 때문에 함수를 계속 출력해도 div는 하나만 생성된다. 이후에는 의미없는 업데이트만 일어나고 추가 생성은 없다.