一.要引入的文件
<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>