>  기사  >  웹 프론트엔드  >  IE 하위 버전에서 call 및 apply_javascript 기술을 지원하지 않는 문제를 완벽하게 해결

IE 하위 버전에서 call 및 apply_javascript 기술을 지원하지 않는 문제를 완벽하게 해결

WBOY
WBOY원래의
2016-05-16 17:10:481607검색

Function.prototype의 적용 및 호출은 1999년에 출시된 ECMA262 Edition3에서만 추가되었습니다(ECMA262 Edition2는 1998년에 출시되었습니다). IE5.01(JScript 5.0) 등 이전 브라우저에서는 적용 및 호출 기능이 없습니다. 따라서 몇 가지 호환성 문제가 있을 수 있습니다.

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

if(!Function.prototype.apply){
Function.prototype.apply = function(obj, args){
obj = obj == 정의되지 않음 ? window : Object(obj);// obj는 js 기본 유형일 수 있습니다
var i = 0, ary = [], str
if(args){
ary[i ] = "args[" i "]"; try{
return eval(str);
}catch(e){
}마지막으로{
delete obj._apply; if(!Function.prototype.call){
Function.prototype.call = function(obj){
var i = 1, args = []
for( len=arguments.length; i< len; i ){
          args[i-1] = 인수[i];
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.