WebUploader 兼容ie(点击无反应时)

2019-07-29  本文已影响0人  羊绘霖
var uploader = WebUploader.create({
    auto: true, // 选完文件后,是否自动上传 
    swf: 'js/Uploader.swf', // swf文件路径 
    server: 'upload.php', // 文件接收服务端 
    pick: '.choose_all', // 选择文件的按钮。可选
    // 只允许选择图片文件。 
    accept: {
       title: 'Images',
       extensions: 'jpg,jpeg,png',
       mimeTypes: 'image/jpg,image/jpeg,image/png'
    },
    thumb: {
       type: 'image/jpg,jpeg,png'
    },
    fileNumLimit: 8, //限制上传个数
    fileSingleSizeLimit: 2048000 //限制单个上传图片的大小
});
// 
//上传之前获取 文件夹相对路径,
      uploader.on('uploadBeforeSend', function(object, data, headers) {
            var name = object.file.name;
            $("#file-text${id!}").val(name);
    });
      ${id!}uploader.on('uploadSuccess', function(file, response){
        $("#${id!}").val(response.url);
        $("#${imageid!}").val(response.fileId);
        $("#fileImg_${id! }").attr("src","${ctx!}/file/download?url="+response.url);
         if(response.url){
             if($("span[for='image']").is(".error")){
                 $("span[for='image']").remove();
                 }
        }
        });
        uploader.on('error', function (code, file) {
             var name=file.name;
             var str="";
             switch(code){
             case "F_DUPLICATE":
                 str=name+"文件重复";
                 errorarr.push(str);
                 break;
             case "Q_TYPE_DENIED":
                 str=name+"文件类型 不允许";
                 errorarr.push(str);
                 break;
             case "F_EXCEED_SIZE":                
                var imageMaxSize = 9;//通过计算
                str=name+"文件大小超出限制"+imageMaxSize+"M"; 
                errorarr.push(str); 
                break; 
             case "Q_EXCEED_SIZE_LIMIT":
                 errorarr.push("超出空间文件大小");
                  break;
             case "Q_EXCEED_NUM_LIMIT":
                 errorarr.push("抱歉,超过每次上传数量图片限制");             
             default:
                 str=name+" Error:"+code;
             }
            alert(errorarr);
         });
              // 点击上传按钮无反应  是因为低版本浏览器没有flash插件或者flash版本过低  无法触发WebUploader的上传机制(html5/flash)  
              // 监测浏览器是否支持flash
        function hasUsableSWF(){
            var swf;     
            if(typeof window.ActiveXObject != "undefined"){
              swf = new  ActiveXObject("ShockwaveFlash.ShockwaveFlash");
            }else{
                swf = navigator.plugins['Shockwave Flash'];
            }
            return swf ? true : false;
        };
        // 判断ie浏览器是否需要下载flash,需要的话弹出提示框并跳转到下载页面
        if($.fn.IEVersion() !== -1 && hasUsableSWF == false) {
            $("#imagepicker").click(function () {
                layer.confirm('请先下载flash', {
                      btn: ['去下载','取消'] //按钮
                    }, function(){
                        window.open("https://www.flash.cn/");
                    }, function(index){
                        layer.close(index);
                    });
             });
        }
上一篇下一篇

猜你喜欢

热点阅读