HTMLelement.dataset
element.children
element.tagName
// 내 코드
const CLASS = {
title: ".clock h3",
time: ".clock p",
}
const $title = document.querySelector(CLASS.title);
const $time = document.querySelector(CLASS.time);
$title.addEventListener("click", () => {
generateEvents[CLASS.title]();
});
$time.addEventListener("click", () => {
generateEvents[CLASS.time]();
});
// 수정한 코드
const divID = this.$el.dataset.id;
const $div = document.querySelector(`[data-id="${divID}"]`);
const divElements = $div.children;
for (let i = 0; i < divElements.length; i++) {
divElements[i].addEventListener("click", (event) => {
if (event.target.tagName === "H3") {
generateEvents[".clock h3"]();
} else if (event.target.tagName === "P") {
generateEvents[".clock p"]();
}
});
}
참고 : HTMLElement.dataset, Element.children, Element.tagName
- 세미 콜론(;)으로 끝나야 하는 문
- empty 문
- let, const 선언문
- import, export 모듈 선언문
- 표현문
- debugger
- continue, break, throw
- return
참고 : Lexical grammer - Automic semicolon insertion