아래 코드는 doFunction() 메서드를 이벤트핸들러에 추가하는 코드이다.
// 변수.addEventListener("click", 메서드, false);
var evt = document.getElementById("event_btn");
evt.addEventListener("click", doFunction, false); |
문제점 : IE8 이하 버전에서는 addEventListener()를 지원하지 않는다.
해결방안 :
function addListener(target, type, handler) {
if (target.addEventListener) {
target.addEventListener(type, handler, false);
} else if (target.attachEvent) {
target.attachEvent("on" + type, handler);
} else {
target["on" + type] = handler;
}
}
|
DOM 레벨 0에 따르는 브라우저에서도 on 프로퍼티를 이용해 이벤트 헨들러를 추가할 수 있다.
'Web > JavaScript' 카테고리의 다른 글
| [javascript] alert(알림), confirm(확인), prompt(프롬프트) (0) | 2013.08.22 |
|---|---|
| [javascript] 숫자만 입력가능한 텍스트필드 (0) | 2013.08.22 |
| [Javascript] 로딩바 구현 (0) | 2013.08.20 |
| [Javascript] IE getElementsByName bug (0) | 2013.08.19 |