>  기사  >  웹 프론트엔드  >  IE8에서 DOM 2를 지원하도록 합니다(프레임워크 없이!)_javascript 기술

IE8에서 DOM 2를 지원하도록 합니다(프레임워크 없이!)_javascript 기술

WBOY
WBOY원래의
2016-05-16 18:37:401192검색

이러한 움직임에 대한 Microsoft의 의도는 분명합니다. 매우 적은 비용으로 DOM2의 모든 인터페이스를 "구현"하려는 것입니다. 다음은 두 가지 예입니다.

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

Element.prototype. addEventListener = function(evtType, evtHandler) {
return this.attachEvent('on' evtType, evtHandler);
}

Object.defineProperty(Event.prototype, 'target', {
get : function() { return this.srcElement },
set: function(v) { return this.srcElement = v }
})

이것 같습니다. 초기에 __definegetter_를 사용하는 것과 동일합니다_ 및 다른 사람들도 같은 방식으로 Firefox를 IE와 호환되도록 만들지만 이번에는 IE의 단점을 보완하기 위해 완전히 표준적인(DOM 프로토타입 및 ECMA v5) 방법을 사용합니다. 아마도 렌더링 엔진은 IE8 개발 중에 다시 작성되었지만 새로운 DOM 인터페이스(아마도 타사 응용 프로그램과 호환될 수 있음)를 출시할 시간이 없었기 때문에(저는 매우 낙관적입니다...) 이 솔루션이 제공되었습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.