var myForm = document.getElementById("myForm");
var upfile = document.getElementById("upfile");
myForm.onsubmit = function() {
//獲取文件對象
var file = upfile.files[0];
//獲取文件大小
var fileSize = file.size;
//一次截取的大小(字節)
var CutSize = 1024 * 1024 * 10;
//開始截取位置
var CutStart = 0;
//結束截取位置
var CutEnd = CutStart + CutSize;
//截取的臨時文件
var tmpfile = new Blob();
while(CutStart < fileSize) {
tmpfile = file.slice(CutStart,CutEnd);
//我們創建一個FormData對象
var fd = new FormData();
//把文件添加到FormData對象中
fd.append("file",tmpfile);
var xhr = new XMLHttpRequest();
//這里使用同步
xhr.open("post","upfile.PHP",false);
//上傳進度
console.log(Math.round( (CutStart + tmpfile.size) / fileSize * 100) + "%");
//發送FormData對象
xhr.send(fd);
//重新設置截取文件位置
CutStart = CutEnd;
CutEnd = CutStart + CutSize;
}
return false;
};