var aPicture=[], aFile, iFile, ajaxXHR;
|
|
function picturePrepare() {
|
$("#page_preview").fadeIn();
|
aFile=$("#file_picture")[0].files;
|
iFile=0;
|
picturePreview();
|
}
|
|
function picturePreview() {
|
var ksize=Math.floor(aFile[iFile].size/1024);
|
var src=URL.createObjectURL(aFile[iFile]);
|
$("#img_preview").attr("src", src);
|
$("#div_upload_percent").css({width:"0"});
|
$("#div_upload_status").html("准备上传");
|
$("#div_upload_number").html("第"+(iFile+1)+"张");
|
$("#div_upload_size").html(ksize+" K");
|
pictureUploadRaw();
|
}
|
|
function pictureUploadRaw() {
|
var data = new FormData();
|
data.append('raw_file', aFile[iFile]);
|
data.append('action', 'upload_raw');
|
var option={};
|
option.url=jsonURL+"picture.json.php";
|
option.type="POST";
|
option.data=data;
|
option.processData=false;
|
option.contentType=false;
|
option.success=pictureUploadRawResponse;
|
option.error=onAjaxError;
|
ajaxXHR=$.ajaxSettings.xhr();
|
ajaxXHR.upload.addEventListener('progress', pictureUploadProgress, false);
|
option.xhr=function(){ return ajaxXHR; };
|
$.ajax(option);
|
}
|
|
function pictureUploadCancel() {
|
ajaxXHR.abort();
|
$("#page_preview").fadeOut();
|
alertMessage("图片上传已取消");
|
$("#file_picture").val("");
|
}
|
|
function pictureUploadProgress (e) {
|
var loaded=parseInt(e.loaded || e.position);
|
var total=parseInt(e.total || e.totalSize);
|
var percent=Math.floor(loaded/total*100);
|
if (percent>=99) {
|
$("#div_upload_status").html("即将完成");
|
$("#div_upload_percent").css({width:"98%"});
|
} else {
|
$("#div_upload_status").html(percent+"%");
|
$("#div_upload_percent").css({width:percent+"%"});
|
}
|
}
|
|
function pictureUploadRawResponse(res) {
|
if (!res) {
|
alertMessage("图片上传出现错误");
|
} else if (res.error_code) {
|
alertMessage(res.error_message);
|
} else {
|
aPicture.push(res);
|
iFile++;
|
if (iFile<aFile.length) {
|
picturePreview();
|
} else {
|
$("#file_picture").val("");
|
$("#page_preview").fadeOut();
|
pictureReady();
|
}
|
}
|
}
|
|
function pictureChoose() {
|
$("#file_picture").click();
|
}
|