JavaScript 07.
Event
How to use Events
Prefer : 나중에 removeEventListener
를 통해서 event listener를 제거 가능!!
🔑 `elementName.addEventListener()` 사용후 click 넘겨주기 → ex) `title.addEventsListener("click", handlteTitleClick);`
🔑 `title.onlick = handleTitleClick;`
Prefer : 나중에 removeEventListener
를 통해서 event listener를 제거 가능!!
console.dir("something"); 햇을때 console창에 on---으로 시작하는것들은 보통 Event입니다.
h1 object 내부에 있는 object : element의 style을 볼수 있는데 javascript 형식으로 작성되어 있음.
addEventListener : event를 listen
const title = document.querySelector(".hello h1");
function handleTitleclick(){
console.log("title was click");
title.style.color = "blue"
};
// title.addEventListener("이벤트의 종류 listen", 동작하는function);
title.addEventListener("click", handleTitleclick);
handleTitleClick 다음 ()사용 하면 안됨.
(= javascript에 function만 넘겨주고 유저가 click 할 경우에 javscript가 실행버튼을 대신 눌러주길 바라는것이기 때문에 / 함수에서 () 이 두 괄호를 추가함으로써 실행버튼을 누를 수 있는 거임)
listen 하고 싶은 event를 찾는 방법
- 구글에 찾고싶은 element 이름 (ex. h1 elment) + MDN 에서 검색
- 링크 中 'Web APIs' 라는 문장이 포함된 페이지를 찾음 (이 과정이 boring하긴 함)
- 그래서, 에디터에
console.dir(element)
를 작성하여 console에 출력시켜줍니다.- 콘솔에서 엄청많은 property 를 출력해줄것 ( 사용가능한 event는 여기서 찾을수 있음!)
- property 앞에
on
이 붙어있다면 그것이 바로 event listener!!- event를 사용할 때에는
onabrot
대신abort
를 사용해야함! (on 뺴라는 소리)
이벤트 종류 간단하게
onmouseenter
마우스가 title 위에 올라갈때 click은 하지않고 그냥 위에 위치할때의 event
onmouseleave
마우스가 위치를 떠낫을때~
More Events
Window Event Listen (기본적으로 제공됨)**
devicemotion
: 모바일이 움직이거나 할때 발상하는 eventreseize
:h1
는 resize할 수 없고window
는 resize할 수 있음
function handleWindowResize() {
document.body.style.backgroundColor = "tomato";
}
/* h1처럼 document밑으로 가져올 수 없엉 / h1랑 document는 다르다*/
💫 `document`의 `body, head, title` 이런것들은 중요하기때문에 존재하는것이지 나머지 element들은 `querySelector` 나 `getElementsById` 등으로 찾아야함!
// HTML in JavaScript
const h1 = document.querySelector("div.hello:first-child h1");
// querySelector는 첫번째 element를 가져옴
// h1.innerText = "hello"; // javascript object 속 property를 변경
console.dir(h1);
function handleTitleclick() {
console.log("Title was click");
h1.style.color = "blue";
}
function handleMouseEnter() {
h1.innerText = "Mouse is here!!🐭"
}
function handleMouseLeave() {
h1.innerText = "Mouse is gone!"
}
function handleWindowResize() {
document.body.style.backgroundColor = "tomato";
}
function handleWindowCopy() {
alert("copier!");
}
function handleWindowOffline() {
alert("SOS no Wi-Fi");
}
function handleWindowOnline() {
alert("ALll GOodd")
}
h1.addEventListener("click", handleTitleclick);
h1.addEventListener("mouseenter", handleMouseEnter);
h1.addEventListener("mouseleave", handleMouseLeave);
window.addEventListener("resize", handleWindowResize);
window.addEventListener("copy",handleWindowCopy);
window.addEventListener("offline", handleWindowOffline);
window.addEventListener("online", handleWindowOnline);
Author And Source
이 문제에 관하여(JavaScript 07.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@miinii/JavaScript-07저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)