DOM0 DOM2 이벤트 추가

1315 단어
호환성
      var EventUtil = {
        addHandler: function (element, type, handler) {
          if (element.addEventListener) {
            element.addEventListener(type, handler, false)
          } else if (element.attachEvent) {
            element.attachEvent("on" + type, handler)
          } else {
            element["on" + type] = handler
          }
        },
        removeHandler: function (element, type, hander) {
          if (element.removeEventListener) {
            element.removeEventListener(type, handler, false)
          } else if (element.detachEvent) {
            element.detachEvent("on" + type, handler)
          } else {
            element["on" + type] = null
          }
        }
      }

DOM2 레벨 이벤트
addEventListener("click", function () {
  // .
}, false)

false:  
true:  


removeEventListener("click", function () {
  //  .
}, false) //  


같은 요소에 이벤트를 추가할 때 불러오는 순서대로 진행합니다.
IE:
 attachEvent("onclick", function () {
    // .
})
 
 onclick,


DOM0과 차이점: 사용하지 않고 DOM0에서 이벤트this는 소속 요소를 가리키며attachEvent 전역 역할 영역에서 실행됩니다.this== window와addEventListener의 차이점: 같은 요소에 여러 개의 이벤트 처리 프로그램을 추가할 수 있으나attachEvent는 상반된 순서로 촉발됩니다

좋은 웹페이지 즐겨찾기