참고사이트 : MDN Web Docs 이벤트 입문
<input type="button" onclick="doProcess()"/>
<script>
function doProcess() { }
</script>
<input type="button" id="btn1"/>
<script>
function doProcess() { }
var btn1 = document.getElementById("btn1");
btn.onclick = doProcess; //함수참조: ()를 붙히지 않음
btn.onclick = function(){ } //익명함수
btn.onclick = () => { } //화살표함수
</script>
<script>
function doProcess() { }
function doClickOnBtn1() { }
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click", doProcess, false);
btn1.addEventListener("click", doClickOnBtn1,false);
<div id="grand" style="border:1px solid #333">grand의 상단
<div id="parent" style="border:1px solid red">parent의 상단
<div id="child" style="border:1px solid blue">child
</div>
parent의 하단
</div>
grand의 하단
</div>
<script>
window.onload = function() {
var grand = document.getElementById("grand");
var parent = document.getElementById("parent");
var child = document.getElementById("child");
ajax.Event.addListener(grand, "mousedown", grandHandler, false);
ajax.Event.addListener(parent, "mousedown", parentHandlerCapture, true);
ajax.Event.addListener(parent, "mousedown", parentHandler, false);
ajax.Event.addListener(child, "mousedown", childHandler, false);
}
</script>
event.stopPropagation();
event.preventDefault();
event 종류
event 객체
function doClickOnBtn1(e) {
var e = window.event || e;
var target = e.target; //이벤트타캣
log("이벤트 대상: " + target.nodeName);
log("대상의 ID: " + target.id);
log("이벤트 타입: " + e.event.type);
}
event 타겟
리스너(핸들러)
그룹이벤트(이벤트위임)
이벤트핸들러에서 this