一.要引入的文件
<link rel="stylesheet" type="text/css" href="webuploader文件夾/webuploader.css"
<script type="text/javascript" src="文件夾/jquery-3.1.1.js"></script><script type="text/javascript" src="webuploader文件夾/webuploader.js"></script>
<script>
//初始化插件
var uploader = WebUploader.create({
auto: true, // 選完文件後,是否自動上傳
swf: "文件夾/Uploader.swf", // swf文件路徑,如果該文件引入不對,按鈕樣式出不來
server: "{{url('storeUpload')}}", // 文件接收服務端
pick: {
'id':'#picker',
'innerHTML':'選擇文件',
'multiple':true
},
//只允許選擇圖片文件。
accept: {
title: 'Images/document',
extensions: 'jpg,jpeg,png,doc,docx,txt,rar,zip,doc,xls,xlsx,pdf',
mimeTypes: 'image/*,.rar,.zip,.doc,.xls,.docx,.xlsx,.pdf'
},
thumb: {
width: 110,
height: 110,
type: 'image/jpg,jpeg,png',
allowMagnify: true,
crop: true
},
chunked: true,
fileNumLimit: 8, //限制上傳個數
fileSingleSizeLimit: 2048000 //限制單個上傳圖片的大小
});
uploader.options.formData.current_id = $("input[name=current_id]").val().trim();
//上傳隊列
uploader.on('fileQueued', function( file ) {
var $list = $("#thelist"),
$li = $(
'<div id="' + file.id + '" class="file-item thumbnail">' +
'<img>' +
'<div class="info">' + file.name + '</div>' +
'</div>'
),
$img = $li.find('img');
// $list爲容器jQuery實例
$list.append( $li );
// 創建縮略圖
uploader.makeThumb( file, function( error, src ) {
if ( error ) {
$img.replaceWith('<span>不能預覽</span>');
return;
}
$img.attr( 'src', src );
}, 100, 100 ); //100x100爲縮略圖尺寸
});
// 文件上傳過程中創建進度條實時顯示
uploader.on( 'uploadProgress', function( file, percentage ) {
var $li = $( '#'+file.id ),
$percent = $li.find('.progress span');
// 避免重複創建
if ( !$percent.length ) {
$percent = $('<p class="progress"><span></span></p>')
.appendTo( $li )
.find('span');
}
$percent.css( 'width', percentage * 100 + '%' );
});
//上傳成功後執行的方法
uploader.on( 'uploadSuccess', function( file, res ) {
console.log(res.filePath);//這裏可以得到上傳後的文件路徑
$( '#'+file.id ).addClass('upload-state-done');
Dialog.winMessage("上傳成功,請關閉頁面");
});
//上傳成功後執行的出錯uploader.on( 'uploadError', function( file ) { var $li = $( '#'+file.id ), $error = $li.find('div.error'); // 避免重複創建 if ( !$error.length ) { $error = $('<div class="error"></div>').appendTo( $li ); } $error.text('上傳失敗'); });
//上傳完成後執行的方法(包含失敗或者成功)uploader.on( 'uploadComplete', function( file ) { $( '#'+file.id ).find('.progress').remove(); });</script>