code: function (e) {
                      if ( !e ) e = window.event;
      
                      var evt = {
                          _event: e,				//실제 IE이벤트 객체
                          type: e.type,
                          target: e.srcElement,
                          currentTarget: el,
                          relatedTarget: e.fromElement? e.fromElement : e.toElement,
                          eventPhase: ( e.srcElement == el )? 2 : 3,
                          //마우스 좌표
                          layerX: e.layerX, layerY: e.layerX,//파폭
                          clientX: e.clientX, clientY: e.clientY,
                          pageX: e.pageX, pageY: e.pageY,
                          offsetX: e.offsetX, offsetY: e.offsetY,
                          screenX: e.screenX, screenY: e.screenY,
                          shiftKey: e.shiftKey, charCode: e.keyCode,
                          altKey: e.altKey,
                          ctrlKey: e.ctrlKey,
                          //이벤트 관리 함수
                          stopPropagation: function () { if (this._event) this._event.cancelBubble = true; },
                          preventDefault: function () { if (this._event) this._event.returnValue = false; },
                          //mousewheel
                          delta: e.wheelDelta / 120,
                          data: e.customData || data
                      };
      
                      handler.call( el, evt );
                  }
docs: 중첩된 함수를 정의하고 이 함수를 handler 함수 대신 등록한다.