當前位置:編程學習大全網 - 圖片素材 - web uploader的demo怎樣導入css文件

web uploader的demo怎樣導入css文件

WebUploader通過準備dom結構、初始化、顯示用戶選擇、文件上傳進度、提示信息實現導入JS, CSS, SWF資源。

WebUploader的demo導入css等資源的流程:

WebUploader概述:WebUploader是由Baidu WebFE(FEX)團隊開發的壹個簡單的以HTML5為主,FLASH為輔的現代文件上傳組件。WebUploader文件上傳組件在現代的瀏覽器裏面能充分發揮HTML5的優勢,同時又不摒棄主流IE瀏覽器,沿用原來的FLASH運行時,兼容IE6+,iOS 6+, android 4+。兩套運行時,同樣的調用方式,可供用戶任意選用。 采用大文件分片並發上傳,極大的提高了文件上傳效率。

功能介紹:

A、分片、並發:分片與並發結合,將壹個大文件分割成多塊,並發上傳,極大地提高大文件的上傳速度。

B、分片、並發:分片與並發結合,將壹個大文件分割成多塊,並發上傳,極大地提高大文件的上傳速度。

當網絡問題導致傳輸錯誤時,只需要重傳出錯分片,而不是整個文件。另外分片傳輸能夠更加實時的跟蹤上傳進度。

C、預覽、壓縮:支持常用圖片格式jpg,jpeg,gif,bmp,png預覽與壓縮,節省網絡數據傳輸。

解析jpeg中的meta信息,對於各種orientation做了正確的處理,同時壓縮後上傳保留圖片的所有原始meta數據。

D、多途徑添加文件:支持文件多選,類型過濾,拖拽(文件&文件夾),圖片粘貼功能。

粘貼功能主要體現在當有圖片數據在剪切板中時,Ctrl + V便可添加此圖片文件。

E、HTML5 & FLASH:兼容主流瀏覽器,接口壹致,實現了兩套運行時支持,用戶無需關心內部用了什麽內核。

同時Flash部分沒有做任何UI相關的工作,方便不關心flash的用戶擴展和自定義業務需求。

F、MD5秒傳:當文件體積大、量比較多時,支持上傳前做文件md5值驗證,壹致則可直接跳過。

如果服務端與前端統壹修改算法,取段md5,可大大提升驗證性能,耗時在20ms左右。

G、易擴展、可拆分:采用可拆分機制, 將各個功能獨立成了小組件,可自由搭配。

采用AMD規範組織代碼,清晰明了,方便高級玩家擴展。

H、引入資源:使用Web Uploader文件上傳需要引入三種資源:JS, CSS, SWF。

<!--引入CSS-->

<link?rel="stylesheet"?type="text/css"?href="webuploader文件夾/webuploader.css">

<!--引入JS-->

<script?type="text/javascript"?src="webuploader文件夾/webuploader.js"></script>

<!--SWF在初始化的時候指定-->

文件上傳:WebUploader只包含文件上傳的底層實現,不包括UI部分。所以交互方面可以自由發揮。

A、Html部分。首先準備dom結構,包含存放文件信息的容器、選擇按鈕和上傳按鈕三個部分。

<div?id="uploader"?class="wu-example">

<!--用來存放文件信息-->

<div?id="thelist"?class="uploader-list"></div>

<div?class="btns">

<div?id="picker">選擇文件</div>

<button?id="ctlBtn"?class="btn?btn-default">開始上傳</button>

</div>

</div>

B、初始化Web Uploader,具體說明,請看壹下代碼中的註釋部分。

var?uploader?=?WebUploader.create({

//?swf文件路徑

swf:?BASE_URL?+?'/js/Uploader.swf',

//?文件接收服務端。

server:?'Url/fileupload.php',

//?選擇文件的按鈕。可選。

//?內部根據當前運行是創建,可能是input元素,也可能是flash.

pick:?'#picker',

//?不壓縮image,?默認如果是jpeg,文件上傳前會壓縮壹把再上傳!

resize:?false

});

C、顯示用戶選擇。由於webuploader不處理UI邏輯,所以需要去監聽fileQueued事件來實現。

D、文件上傳進度。文件上傳中,Web Uploader會對外派送uploadProgress事件,其中包含文件對象和該文件當前上傳進度。

E、文件成功、失敗處理。文件上傳失敗會派送uploadError事件,成功則派送uploadSuccess事件。不管成功或者失敗,在文件上傳完後都會觸發uploadComplete事件。

創建Web Uploader實例

//?初始化Web?Uploader

var?uploader?=?WebUploader.create({

//?選完文件後,是否自動上傳。

auto:?true,

//?swf文件路徑

swf:?BASE_URL?+?'/js/Uploader.swf',

//?文件接收服務端。

server:?'/server/fileupload.php',

//?選擇文件的按鈕。可選。

//?內部根據當前運行是創建,可能是input元素,也可能是flash.

pick:?'#filePicker',

//?只允許選擇圖片文件。

accept:?{

title:?'Images',

extensions:?'gif,jpg,jpeg,bmp,png',

mimeTypes:?'image/*'

}

});

附:

監聽fileQueued事件,通過uploader.makeThumb來創建圖片預覽圖。PS: 這裏得到的是Data URL數據,IE6、IE7不支持直接預覽。可以借助FLASH或者服務端來完成預覽。

然後剩下的就是上傳狀態提示了,當文件上傳過程中, 上傳成功,上傳失敗,上傳完成都分別對應uploadProgress,uploadSuccess, uploadError, uploadComplete事件。

  • 上一篇:高達zz男主的後續故事是怎樣的,在哪部作品裏說明了?
  • 下一篇:班級管理工作論文電子版?
  • copyright 2024編程學習大全網