jQuery插件WebUploader實(shí)現(xiàn)文件上傳
最近在項(xiàng)目中用到了百度的文件圖片上傳插件WebUploader,分享給大家。
WebUploader是由Baidu WebFE(FEX)團(tuán)隊(duì)開(kāi)發(fā)的一個(gè)簡(jiǎn)單的以HTML5為主,F(xiàn)LASH為輔的現(xiàn)代文件上傳組件。在現(xiàn)代的瀏覽器里面能充分發(fā)揮HTML5的優(yōu)勢(shì),同時(shí)又不摒棄主流IE瀏覽器,沿用原來(lái)的FLASH運(yùn)行時(shí),兼容IE6+,iOS 6+, android 4+。兩套運(yùn)行時(shí),同樣的調(diào)用方式,可供用戶任意選用。 采用大文件分片并發(fā)上傳,極大的提高了文件上傳效率。
需要在http://fex.baidu.com/webuploader/download.html點(diǎn)擊打開(kāi)鏈接下載WebUploader
// 初始化Web Uploader***上傳圖片
var uploader = WebUploader.create({
// 選完文件后,是否自動(dòng)上傳。
auto: true,
// 文件接收服務(wù)端地址,自動(dòng)生成縮略圖需要后端完成。
server: '/common/uploadFile?imageZip=1',
// 選擇文件的按鈕??蛇x。
// 內(nèi)部根據(jù)當(dāng)前運(yùn)行是創(chuàng)建,可能是input元素,也可能是flash.
pick: '#sendimg',
fileNumLimit: 5,
//allowMagnify: false,
// 只允許選擇圖片文件。
accept:{
title: 'Images',
extensions: 'gif,jpg,jpeg,bmp,png',
mimeTypes: 'image/*'
}
});
// 當(dāng)有文件添加進(jìn)來(lái)的時(shí)候
uploader.on( 'fileQueued', function( file ) {
var $li = $(
'<div style="float:right" id="' + file.id + '" class="delimg">' +
'<img class="addimg"><div class="closeimg">×</div>' +
'</div>'
),
$img = $li.find('img');
// $list為容器jQuery實(shí)例
$("#piccon").append( $li );
// 創(chuàng)建縮略圖
// 如果為非圖片文件,可以不用調(diào)用此方法。
// thumbnailWidth x thumbnailHeight 為 100 x 100
uploader.makeThumb( file, function( error, src ) {
if ( error ) {
$img.replaceWith('<span>不能預(yù)覽</span>');
return;
}
$img.attr( 'src', src );
}, 100, 100 );
$li.on('click', function() {
$(this).remove();
})
});
// 文件上傳過(guò)程中創(chuàng)建進(jìn)度條實(shí)時(shí)顯示。
uploader.on( 'uploadProgress', function( file, percentage ) {
var $li = $( '#'+file.id ),
$percent = $li.find('.progress span');
// 避免重復(fù)創(chuàng)建
if ( !$percent.length ) {
$percent = $('<p class="progress"><span></span></p>')
.appendTo( $li )
.find('span');
}
$percent.css( 'width', percentage * 100 + '%' );
});
// 文件上傳成功,給item添加成功class, 用樣式標(biāo)記上傳成功。
uploader.on( 'uploadSuccess', function( file,response ) {
imgurl=response.fileName;//這里可以拿到后臺(tái)返回的圖片名稱
//alert(imgurl);
$( '#'+file.id ).addClass('upload-state-done');
});
// 文件上傳失敗,顯示上傳出錯(cuò)。
uploader.on( 'uploadError', function( file ) {
var $li = $( '#'+file.id ),
$error = $li.find('div.error');
// 避免重復(fù)創(chuàng)建
if ( !$error.length ) {
$error = $('<div class="error"></div>').appendTo( $li );
}
$error.text('上傳失敗');
});
// 完成上傳完了,成功或者失敗,先刪除進(jìn)度條。
uploader.on( 'uploadComplete', function( file ) {
$( '#'+file.id ).find('.progress').remove();
});
更多精彩內(nèi)容,請(qǐng)點(diǎn)擊《jQuery上傳操作匯總》,進(jìn)行深入學(xué)習(xí)和研究。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery webuploader分片上傳大文件
- 快速掌握jQuery插件WebUploader文件上傳
- 百度多文件異步上傳控件webuploader基本用法解析
- jquery組件WebUploader文件上傳用法詳解
- 基于WebUploader的文件上傳js插件
- 使用Web Uploader實(shí)現(xiàn)多文件上傳
- Java中使用WebUploader插件上傳大文件單文件和多文件的方法小結(jié)
- php結(jié)合web uploader插件實(shí)現(xiàn)分片上傳文件
- Web Uploader文件上傳插件使用詳解
- 關(guān)于webuploader插件使用過(guò)程遇到的小問(wèn)題
相關(guān)文章
jQuery實(shí)現(xiàn)點(diǎn)擊查看大圖并以彈框的形式居中
這篇文章主要介紹了jQuery實(shí)現(xiàn)點(diǎn)擊查看大圖并以彈框的形式居中的代碼,代碼簡(jiǎn)單易懂,需要的朋友參考下2016-08-08
Jquery中使用show()與hide()方法動(dòng)畫顯示和隱藏圖片
以前我們?cè)趈s中如果要隱藏顯示一個(gè)元素我們需要利用display等于none來(lái)設(shè)置并且還沒(méi)有效果,現(xiàn)在在jquery中有了hide();我們可以利用hide()方法來(lái)操作,希望本文章給大家所有幫助。2015-10-10
基于jQuery創(chuàng)建鼠標(biāo)懸停效果的方法
這篇文章主要介紹了基于jQuery創(chuàng)建鼠標(biāo)懸停效果的方法,實(shí)例分析了jQuery實(shí)現(xiàn)鼠標(biāo)特效的原理與詳細(xì)步驟,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
jquery1.5.1中根據(jù)元素ID獲取元素對(duì)象的代碼
盡管聽(tīng)說(shuō)jquery的大名幾年了,但是一直沒(méi)有使用過(guò)。這兩天想在項(xiàng)目中使用被一些小細(xì)節(jié)折騰的夠嗆,看來(lái)jquery沒(méi)有傳說(shuō)中的那么好學(xué)。2011-04-04
如何使用jQuery技術(shù)開(kāi)發(fā)ios風(fēng)格的頁(yè)面導(dǎo)航菜單
這篇文章主要介紹了如何使用jQuery技術(shù)開(kāi)發(fā)ios風(fēng)格的頁(yè)面導(dǎo)航菜單,需要的朋友可以參考下2015-07-07
jQuery獲取復(fù)選框選中的當(dāng)前行的某個(gè)字段的值
這篇文章主要介紹了jQuery獲取復(fù)選框選中的當(dāng)前行的某個(gè)字段的值,需要的朋友可以參考下2017-09-09
jquery.validate[.unobtrusive]和Bootstrap實(shí)現(xiàn)tooltip錯(cuò)誤提示問(wèn)題分析
這篇文章主要介紹了jquery.validate[.unobtrusive]和Bootstrap實(shí)現(xiàn)tooltip錯(cuò)誤提示問(wèn)題分析的相關(guān)資料,需要的朋友可以參考下2016-10-10
正負(fù)小數(shù)點(diǎn)后兩位浮點(diǎn)數(shù)實(shí)現(xiàn)原理及代碼
需要做個(gè)對(duì)兩位小數(shù)點(diǎn)的正負(fù)浮點(diǎn)數(shù)的處理要求:非數(shù)字或者.字符自動(dòng)清除,并對(duì).12自動(dòng)修補(bǔ).前的0,實(shí)現(xiàn)原理如下,感興趣的朋友可以參考下2013-09-09
jQuery獲取checkboxlist的value值的方法
最近著手一個(gè)項(xiàng)目用到了服務(wù)器空間checkboxlist ,使用起來(lái)是方便,可以想要從js獲取值就稍微麻煩點(diǎn)了,google后找到了如下方法,感興趣的小伙伴們可以參考一下2015-09-09
用JQuery 實(shí)現(xiàn)的自定義對(duì)話框
用JQuery 實(shí)現(xiàn)的自定義對(duì)話框...2007-03-03

