xhr = new XMLHttpRequest();
var clock = null;
//file选择,触发定时器函数
function upload(){
clock = window.setInterval(selectfile,1000);
//定时1s
}
//闭包函数
var selectfile = (function(){
const LENGTH = 1*1024*1024;//每次截取的长度
var sta = 0; //从零处开始截取
var end = sta +LENGTH;
var flag = false; //表示上一块是否发送完毕
var blob = null;
var fd = null;
var percent = 0;
//匿名函数
return(function (){
if(flag == true){ //是否正在上传
return;
}
flag = true;
var mov = document.getElementById('pdfFile').files[0];/* blob对象 */
var proId=document.getElementById('projectId').value;
fd = new FormData();
blob = mov.slice(sta,end);
fd.append('pdfFile',blob);
fd.append('proId',proId);
up(fd);
//如果sta > mov.size 就结束
if(sta >= mov.size){
clearInterval(clock); //清除定时
return ;
}
sta = end;
end = sta + LENGTH;
flag = false; //上传完毕
percent = 100 * end /mov.size ;
percent = percent >= 100 ? 100 : percent;
percent=percent.toFixed(2);
var son = document.getElementById('son');
son.innerHTML = percent+"%";
son.style.width=percent+"%";
});
})();
function up(fd){
xhr.open("post","<?= site_aurl($tablefunc.'/upload') ?>",false);
xhr.send(fd);
}
相关推荐
封装了一个ajax多文件上传,功能就是选择多个文件,ajax上传,支持进度条处理。 调用方式很简单,写一个json对象做为参数配置,设置要上传url以及事件处理函数,new一个AjaxUploadX对象,调用selectFiles方法选择...
Ajax中XMLHTTPRequest对象的说明文档,包含其相应的对象和方法
使用XMLHTTPRequest v2上载文件的React组件 在查看带有示例的完整文档 拉请求是受欢迎的。 如何在本地运行/开发 使用npm start在localhost:8080上运行webpack开发服务器。 启用热模块更换。 使用npm test运行测试...
php+js使用XMLHttpRequest通过js模拟表单提交上传视频同时实现进度条展示,上传后自动加载并播放功能。
我的网址:www.0379zd.com欢迎光临。XMLHttpRequest是ajax的本质,所以要彻底研究。
思路:只要我们知道上传文件的总大小,还有上传过程中上传文件的大小,那么就可以实现进度显示了。 在html5中,XMLHttpRequest对象,传送数据的时候,progress事件用来返回进度信息。 它分成上传和下载两种情况 1....
XMLHttpRequest中文参考
AJAX技术使用XMLHttpRequest对象传递参数的中文乱码问题
XmlHttpRequest详解XmlHttpRequest详解XmlHttpRequest详解
主要为大家详细介绍了XMLHttpRequest响应属性、二进制数据、监测上传下载进度,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Ajax核心对象XMLHTTPRequest详细参数及例子
主要介绍了关于安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法 的相关资料,需要的朋友可以参考下
带进度条的HTML5上传文件---(使用XMLHttpRequest对象)
XMLHttpRequest使用小例子,将值异步传递,纯JS实现
14_利用XMLHttpRequest接受与处理XML数据.doc XMLHttpRequest 接受 处理 XML数据
XMLhttpRequest实现拖动上传
一个轻量级、独立于框架、跨浏览器的 HTML5 XMLHttpRequest 文件上传脚本,带有进度更新。 Chrome、Firefox、Safari 和 IE 10+ 兼容。 ##使用 var uploader = new FileUploader('http://my.upload/url'); ...
全面剖析Ajax XMLHttpRequest对象
XMLHTTPREQUEST对象创建,交互,回调底层代码。。。