免费的HTML5版uploadify送上
经过一番折腾,终于覆盖了大部分API,已经能够实现基本的文件上传需求。如下,是插件中的default配置:
复制代码
VAR defaults = {
fileTyPEExts:'',//允许上传的文件类型,格式'*.jpg; *.doc'
uploader:'',//文件提交的地址
auto:false,//是否开启自动上传
method:'post',//发送请求的方式,get或post
multi:true,//是否允许选择多个文件
formData:null,//发送给服务端的参数,格式:{ key1:value1,key2:value2}
fileObjName:'file',//在后端接受文件的参数名称,如PHP中的$_FILES['file']
fileSizeLimIT:2048,//允许上传的文件大小,单位KB
showUploadedPercent:true,//是否实时显示上传的百分比,如20%
showUploadedSize:false,//是否实时显示已上传的文件大小,如1M/2M
buttonText:'选择文件',//上传按钮上的文字
removeTimeout: 1000,//上传完成后进度条的消失时间,单位毫秒
itemTemplate:itemTemp,//上传队列显示的模板
onUploadStart:null,//上传开始时的动作
onUploadSuccess:null,//上传成功的动作
onUploadComplete:null,//上传完成的动作
onUploadError:null, //上传失败的动作
onInit:null,//初始化时的动作
onCancel:null//删除掉某个文件后的回调函数,可传入参数file
}
复制代码
已实现的特性有:
多文件上传
显示进度条
显示已上传文件大小和百分比
文件后缀名和文件大小检测
向服务端提交额外数据
自定义文件队列中的html模板
css样式分离出单独文件,可自己定制样式
添加文件上传各阶段的回调函数
使用方式
首先页面上需要一个容器,通常是一个p,如:
p id="upload"> /p>
然后直接调用即可:
复制代码
$('#upload').Huploadify({
auto:true,
fileTypeExts:'*.jpg; *.png; *.exe',
multi:true,
formData:{ key:123456,key2:'vvvv'} ,
fileSizeLimit:1024,
showUploadedPercent:true,
showUploadedSize:true,
removeTimeout:9999999,
uploader:'upload.php',
onUploadStart:function(){
console.LOG('开始上传');
} ,
onInit:function(){
console.log('初始化');
} ,
onUploadcomplete:function(){
console.log('上传完成');
} ,
onCancel:function(file){
console.log(file);
}
} );
相信有不少同学用过uploadify这一款文件上传插件,它支持多文件选择、能显示进度条、可配置性高,总体来说是比较好用的。官网有两个版本供下载,分别是flash版和HTML5版。不过令人惋惜的是,HTML5版是收费的。活了这么多年,啥时候用软件掏过钱啊!秉着发扬我们的优良传统,我决定照着它的API自己实现一个HTML5版的。
经过一番折腾,终于覆盖了大部分API,已经能够实现基本的文件上传需求。如下,是插件中的default配置:
复制代码
var defaults = {
fileTypeExts:'',//允许上传的文件类型,格式'*.jpg; *.doc'
uploader:'',//文件提交的地址
auto:false,//是否开启自动上传
method:'post',//发送请求的方式,get或post
multi:true,//是否允许选择多个文件
formData:null,//发送给服务端的参数,格式:{ key1:value1,key2:value2}
fileObjName:'file',//在后端接受文件的参数名称,如PHP中的$_FILES['file']
fileSizeLimit:2048,//允许上传的文件大小,单位KB
showUploadedPercent:true,//是否实时显示上传的百分比,如20%
showUploadedSize:false,//是否实时显示已上传的文件大小,如1M/2M
buttonText:'选择文件',//上传按钮上的文字
removeTimeout: 1000,//上传完成后进度条的消失时间,单位毫秒
itemTemplate:itemTemp,//上传队列显示的模板
onUploadStart:null,//上传开始时的动作
onUploadSuccess:null,//上传成功的动作
onUploadComplete:null,//上传完成的动作
onUploadError:null, //上传失败的动作
onInit:null,//初始化时的动作
onCancel:null//删除掉某个文件后的回调函数,可传入参数file
}
复制代码
已实现的特性有:
多文件上传
显示进度条
显示已上传文件大小和百分比
文件后缀名和文件大小检测
向服务端提交额外数据
自定义文件队列中的html模板
css样式分离出单独文件,可自己定制样式
添加文件上传各阶段的回调函数
使用方式
首先页面上需要一个容器,通常是一个p,如:
p id="upload"> /p>
然后直接调用即可:
复制代码
$('#upload').Huploadify({
auto:true,
fileTypeExts:'*.jpg; *.png; *.exe',
multi:true,
formData:{ key:123456,key2:'vvvv'} ,
fileSizeLimit:1024,
showUploadedPercent:true,
showUploadedSize:true,
removeTimeout:9999999,
uploader:'upload.php',
onUploadStart:function(){
console.log('开始上传');
} ,
onInit:function(){
console.log('初始化');
} ,
onUploadComplete:function(){
console.log('上传完成');
} ,
onCancel:function(file){
console.log(file);
}
} );
觉得可用,就经常来吧! 欢迎评论哦! html5教程,巧夺天工,精雕玉琢。小宝典献丑了!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 免费的HTML5版uploadify送上
本文地址: https://pptw.com/jishu/586691.html