知識點:利用WebUploader,實現文件批量上傳,並且實時顯示文件的上傳進度
參考官方文檔:http://fex.baidu.com/webuploader/
(1)引入三個資源 JS,CSS,SWF
webuploader.js
,webuploader.css
,Uploader.swf
(2)初始化Web Uploader
uploader = WebUploader.create({
// swf文件路徑
swf: '/static/swf/Uploader.swf',
// 文件接收服務端接口
server: '/screen/upload',
// 選擇文件的按鈕。可選。
// 內部根據當前運行是創建,可能是input元素,也可能是flash.
pick: {
//picker為頁面上傳文件按鈕 div的id名稱
id:'#picker',
//是否允許單次上傳時同時選擇多個文件
multiple:true
},
//[可選] [默認值:undefined] 驗證文件總數量, 超出則不允許加入隊列。
//上傳文件總數限制
fileNumLimit: 20,
//fileSingleSizeLimit {int} [可選] [默認值:undefined] 驗證單個文件大小是否超出限制, 超出則不允許加入隊列
//上傳的單個文件大小限制
//500M,暫時針對視頻(字節為單位)
fileSingleSizeLimit:500*1024*1024,
method:'POST',
//允許上傳文件的類型
accept: {
title: 'file',
extensions: 'jpg,bmp,png,mp4,flv'
},
// 不壓縮image, 默認如果是jpeg,文件上傳前會壓縮一把再上傳!
resize: false,
//可否可以重復上傳相同文件(如果為true,則相同文件可以重復上傳)
duplicate: true
});
(3)上傳進度,成功失敗事件,可參考官方demo,或者本人demo,在原基礎上修改