webuploaderアップロードで発生した問題
3381 ワード
ファイルアップロードスペースwebuploader+jqueryは、オープンソースで使いやすいです.しかし、使用中にいくつかの問題が発生しました.
に質問
1.複数の画像をアップロードすると、画像の順番が乱れてしまいます.解決策threads:1
2.ファイルが元の割合でアップロードされていない場合、1 M以上のファイルは圧縮され、解決方法compress:false
3.ファイル選択時のブラウザの反応が鈍く、解決方法:accept:{title:'Images',extensions:“gif,jpg,jpeg,png”,mimeType:“.gif,.jpg,.jpeg,.png”}
4.ieブラウザ、ファイルのアップロードに失敗しました.「swf」かもしれません.定義されたファイルパスが間違っています.
ieブラウザはflashモードでファイルをアップロードします.
に質問
1.複数の画像をアップロードすると、画像の順番が乱れてしまいます.解決策threads:1
2.ファイルが元の割合でアップロードされていない場合、1 M以上のファイルは圧縮され、解決方法compress:false
3.ファイル選択時のブラウザの反応が鈍く、解決方法:accept:{title:'Images',extensions:“gif,jpg,jpeg,png”,mimeType:“.gif,.jpg,.jpeg,.png”}
4.ieブラウザ、ファイルのアップロードに失敗しました.「swf」かもしれません.定義されたファイルパスが間違っています.
ieブラウザはflashモードでファイルをアップロードします.
var fileCount=0;
var fileSize=0;
var uploader;
var errorarr=new Array();
function initFile(){
uploader = WebUploader.create({
auto: true,
// swf
swf : '/ueditor/third-party/webuploader/Uploader.swf',
// 。
server : "upFiles.do",
// 。 。
// , input , flash.
pick : '#filePicker',
// image, jpeg, !
//resize : false,// , compress
compress: false,//webuploader , compress:false,
accept: {
title: 'Images',
extensions: "gif,jpg,jpeg,png",
mimeTypes: ".gif,.jpg,.jpeg,.png"// WebUploader , , ,
},
fileVal:"upfile",// name。
fileSizeLimit:500 * 1024 * 1024,// ,
fileSingleSizeLimit:2 * 1024 * 1024,// ,
fileNumLimit:20,//
threads:1// 。 ,
});
/* 。
@param file File
@param ret
*/
uploader.on('uploadSuccess', function (file, ret) {
var $file = $('#' + file.id);
try {
if (ret.state == 'SUCCESS') {
var json={};
json.dataid=ret.picId;
json.src=ret.url;
json.width=ret.width;
json.height=ret.height;
if(!putPicMap(json)){//
return false;
}
}else {
//console.log("faile","aa");
}
} catch (e) {
//console.log("faile","bb");
}
});
/**
*
*code=F_DUPLICATE
**/
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;
}
});
uploader.on( 'all', function( type, arg1, arg2 ) {
if(type=="startUpload"){//
uploadchange();
}else if(type=="uploadFinished"){//
if(errorarr.length>0){
alert(errorarr.join("
"));
}
//
errorarr.length=0;
}
});
}
/**
* , ,
*/
function uploadchange(){
// ,
/* GET */
uploader.option('server', "upFiles.do?aa=3");
}