原理:
上传属性结合进步法监测上传过程XMLHttpRequest对象
VaR XHR =新(XMLHttpRequest);XHR。上传。进步=
功能(e){ }
因为使用jQuery
默认XMLHttpRequest对象内部产生的XHR结合进步的
方法,不能直接给JQ
所以就再生一个XMLHttpRequest对象与进步结合jQuery
第一封装在监控功能回到一个XMLHttpRequest对象被绑定到的监控功能通过法
无功xhronprogress =功能(好玩){
xhronprogress.onprogress =乐趣; / /绑定监听
使用闭包监视/绑定
返回
函数(){
通过美元。ajaxsettings.xhr(); / /得到一个XMLHttpRequest对象
VaR XHR =美元。ajaxsettings.xhr();
确定函数是否是一个函数/监视器。
如果(typeof xhronprogress.onprogress!= 'function)
Return XHR;
如果监控功能和XHR /对象
支持绑定将监控功能来包扎
如果(xhronprogress.onprogress XHR。上传){
xhr.upload.onprogress = xhronprogress.onprogress;
}
返回XHR;
}
}
使用ajax方法进行上载
$ ajax({
网址,
类型:'post,
Xhr:xhronprogress(function(e){)
无功率= e.loaded / / / e.total;计算百分比
})
});
使用hw.js
文件上传
工具,进度条效果支持绑定自定义监控功能,支持实时上传预览(HTML5实现无需
服务器)hw.js。
请选择要上载的文件
VaR上传=新hw.widget.upload.create({
目标:#盖 / /指定上传
控制 URL:
设置允许KB的上传文件大小默认为4096。
最大尺寸:2048,
打开文件上传。
多:假,
设置上传按钮
文本 UploadText:请选择要上传的文件,
以分钟为单位设置上传超时,默认值为20分钟。
超时时间:20,
/ /设置允许上传的
文件类型,默认为{ 'png ','jpg ','jpeg}
/ /接受:{ 'jpg},
/ /设置文件上传
参数名称默认为hw_upload_input
输入参数名:掩饰和',
设置控件上传
图片/默认为true,false未打开文件预览。
图像:真实,
检查/自定义文件函数默认文件类型
检测 / / filecheck:功能(文件){ return true;},
viewsize:{ 500300 } / /设置图片的预览框的宽度,默认是400300
ViewImageWidth:70 / /设置预览图像的宽度,默认是80
完成:函数(数据){
警报(数据);在服务器返回的数据之后上传
}
});
以上是jQuery监控文件上传进度条效果的全部内容。我希望你能支持得更多。