美文网首页
WebUploader 兼容ie(点击无反应时)

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

作者: 羊绘霖 | 来源:发表于2019-07-29 17:09 被阅读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);
                        });
                 });
            }
    

    相关文章

      网友评论

          本文标题:WebUploader 兼容ie(点击无反应时)

          本文链接:https://www.haomeiwen.com/subject/zgtirctx.html