ajaxfileupload.js 兼容ie9,10

在使用ajaxfileupload.js上传文件时,ie9和ie10会报INVALID_CHARACTER_ERR (5)的错误,导致无法上传成功;

网上查了一系列处理方式:

如:

把代码

if(window.ActiveXObject) {  
    var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />');  
     if(typeof uri== 'boolean'){  
         io.src = 'javascript:false';  
     }  
     else if(typeof uri== 'string'){  
         io.src = uri;  
     }  
 }  

//修改成
if(window.ActiveXObject) {  
   if(jQuery.browser.version=="9.0" || jQuery.browser.version=="10.0"){  
        var io = document.createElement('iframe');  
        io.id = frameId;  
        io.name = frameId;  
    }else if(jQuery.browser.version=="6.0" || jQuery.browser.version=="7.0" || jQuery.browser.version=="8.0"){  
        var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />');  
        if(typeof uri== 'boolean'){  
            io.src = 'javascript:false';  
        }  
        else if(typeof uri== 'string'){  
            io.src = uri;  
        }  
    }  
} 

 

但jq版本问题并未成功。后查到

 

 因此在createUploadIframe判断下ie版本即可;

具体代码如下 :

var isIE9 = '';
        //判断是否是ie9,10
        if (navigator.userAgent.indexOf("MSIE 9.0")>0 || navigator.userAgent.indexOf("MSIE 10.0")>0) {
            isIE9 = true;
        }
        if(window.ActiveXObject && !isIE9) {
            var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />');
            if(typeof uri== 'boolean'){
                io.src = 'javascript:false';
            }
            else if(typeof uri== 'string'){
                io.src = uri;
            }
        }

 

转载于:https://www.cnblogs.com/suiyide/p/9909016.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值