JavaScript DOM 추가 이벤트

DOM 을 지원 하 는 브 라 우 저 에 이 벤트 를 추가 하 는 것 은 addEventListener()방법 으로 대상 에 이 벤트 를 추가 하 는 것 이기 때 문 입 니 다!MSIE 에 게 는 attachEvent()로 대상 에 게 이 벤트 를 추가 합 니 다!이것 은 우리 로 하여 금 하나의 용기 로 이 두 개의 서로 다른 브 라 우 저 에서 사건 에 대한 처리 방식 을 불 러 와 야 하 게 합 니 다!이렇게 하면 우 리 는 직접 addEvent()방법 을 호출 하여 대상 에 게 이 벤트 를 추가 할 수 있 습 니 다!이게 더 편 하지 않 아?!하하...어디 보 자!/**요소*@param{Object}node 에 감청 이 벤트 를 등록 하려 는 대상*@param{Object}type 이벤트 유형*@param{Object}listener 이벤트 방법*/function addEvent(node,type,listener){//앞의 방법 으로 호환성 을 검사 하여 안정 적 인 퇴화 if(!)를 보장 합 니 다.node = $(node))) return false; if(node.attachEvent){//IE 를 위 한 방법 node[e'+type+listener]=listener;node[type+listener] = function(){node['e'+type+listener]( window.event );} node.attachEvent( 'on'+type, node[type+listener] ); return true; }else if(node.addEventListener){//DOM 을 지원 하 는 브 라 우 저 를 위 한 방법 node.addEventListener(type,listener,false);return true; } // 두 가지 방법 이 모두 갖 추어 지지 않 으 면 false 로 돌아 갑 니 다.return false; }; window['liujingning']['addEvent'] = addEvent; 사용 방법:예 를 들 어 우리 가 페이지 의 onload()에 이 벤트 를 추가 하려 면 다음 과 같이 쓸 수 있 습 니 다.liujinging.addEvent(window,'load',function(Event){/여기에 당신 이 쓰 려 는 코드}우 리 는 특정한 ID 에 이벤트 var getId=document.getElement ById('aa')를 추가 할 수 있 습 니 다.liujingning.addEvent(getId,load,function(Event){//여기에 쓰 려 는 코드 를 쓰 십시오}

좋은 웹페이지 즐겨찾기