작성 방법을 논의할 때 표준 브라우저에서는 인수[0]만 사용하여 이벤트를 얻을 수 있다고 생각했습니다. 결과적으로 노디실 동급생 이런 식으로 활용이 가능하다고 해서 다음과 같은 테스트를 해보았습니다."/> 작성 방법을 논의할 때 표준 브라우저에서는 인수[0]만 사용하여 이벤트를 얻을 수 있다고 생각했습니다. 결과적으로 노디실 동급생 이런 식으로 활용이 가능하다고 해서 다음과 같은 테스트를 해보았습니다.">

 >  기사  >  웹 프론트엔드  >  window.event는 모든 브라우저에서 지원될 예정이며 future_javascript 스킬에서 사용하기 편리할 것입니다.

window.event는 모든 브라우저에서 지원될 예정이며 future_javascript 스킬에서 사용하기 편리할 것입니다.

WBOY
WBOY원래의
2016-05-16 17:58:57987검색

각 브라우저에서 다음 코드의 결과를 살펴보세요.

코드 복사 코드는 다음과 같습니다.

test

IE8: 개체, 개체, 정의되지 않음
FF8.0: 정의되지 않음,MouseEvent,정의되지 않음
Cr16: MouseEvent,MouseEvent,undefine
Opera: MouseEvent,MouseEvent,undefine
Safira: MouseEvent,MouseEvent,undefine

기타 FF8을 제외한 모든 브라우저는 이미 window.event를 지원합니다.

ff8은 이벤트를 호출할 때 {event:new Event(...)}를 갖는 것으로 보이므로 onclick에서 직접 "event"를 사용하여 얻을 수도 있습니다. 이벤트 핸들.

또 다른: 호기심 많은 학생이 QWrap의 이벤트에 정적 메소드 QW.EventH.getEvent를 제공했는데, 이는 다양한 상황에서 현재 이벤트 객체를 얻는 데 사용됩니다.
코드 복사 코드는 다음과 같습니다.

/**
* 이벤트 객체 가져오기
* @method getEvent
* @param {event} 이벤트 (선택 사항) 이벤트 객체는 호출 위치가 있는 호스트의 이벤트를 기본값으로 설정합니다.
* @param {element} 요소 (선택 사항) 모든 요소 객체 요소 객체가 위치한 호스트의 이벤트
* @return {event} 이벤트 객체
*/
getEvent: function(event , 요소) {
if (이벤트) {
return 이벤트;
} else if (요소) {
if (element.document) {return element.document.parentWindow.event }
if ( element.parentWindow) {return element.parentWindow.event; }
}

if (window.event) {
return window.event;
var f = 인수.callee;
do {
if (/Event/.test(f.arguments[0])) {return f.arguments[0] }
} while (f = f .caller) ;
}
},

QW 페이지를 사용하면 다음과 같이 직접 작성할 수 있습니다.

코드 복사 코드는 다음과 같습니다.


즉, PreventDefault를 호출할 때 이벤트 인스턴스를 전달할 필요가 없습니다.
이전 기사:Chrome 기본 메소드_javascript 기술 배열다음 기사:Chrome 기본 메소드_javascript 기술 배열

관련 기사

더보기