H5原生文件上传
来源:互联网 发布:应用程序界面设计软件 编辑:程序博客网 时间:2024/05/22 09:47
一 、获取文件
var file=DOM对象.files[0]; //获取的第一个文件
二、判断文件大小
file.size > 52428800 //判断大小是否小于50M
三、上传文件(用FormData封装)
var data = new FormData(); data.append('myFiles', self.file); LessonBeforeHandler.upResource(data, self, self.GetResOrigin);//调用上传接口
四、上传进度(H5原生进度条)
LessonBeforeHandler.upResource= function(data,listener,listenerFun) { $.ajax({ url:上传地址, data: data, type: "post", timeout: 300000, cache: false, processData: false, contentType: false, xhrFields: { withCredentials: true }, xhr: function(){ //获取ajaxSettings中的xhr对象,为它的upload属性绑定progress事件的处理函数 var myXhr = $.ajaxSettings.xhr(); if(myXhr.upload){ //检查upload属性是否存在 //绑定progress事件的回调函数 myXhr.upload.onprogress = progressFunction; } return myXhr; //xhr对象返回给jQuery使用 }, success: function (data) { if (data.code == 0) { listenerFun.call(listener,true,data.result); } else { listenerFun.call(listener, false, data.code, data.msg); } }, error: function (data) { listenerFun.call(listener, false, data.status, data.statusText) } }); //progress事件的回调函数 function progressFunction(evt) { var widthAll=$("#progress-all").width(); var progressBar = document.getElementById("progress-all"); var percentageDiv = document.getElementById("progress-now"); var percentageNum = document.getElementById("progress-num"); if (evt.lengthComputable) { progressBar.max = evt.total; progressBar.value = evt.loaded; $(percentageDiv).css("width",Math.round(evt.loaded / evt.total *widthAll)+"px"); percentageNum.innerHTML = Math.ceil(evt.loaded / evt.total * 100) + "%"; if (evt.loaded == evt.total) { console.log("上传完成100%"); } } }};
0 0
- H5原生文件上传
- Atitit .h5文件上传
- H5上传文件file
- h5文件分块上传
- springmvc文件上传(原生)
- PHP原生--文件上传
- 文件上传 - JAVA原生
- 原生上传文件
- php原生文件上传
- 原生方式上传文件
- h5、原生
- AJAX+H5 上传文件+进度条
- H5拖曳文件上传示例
- Atitit .h5文件上传 v3
- springmvc + h5(进度条)文件上传
- h5文件上传完整实例
- h5新增文件图片上传
- 文件上传(二)原生一般文件上传
- 【NOIP2017提高组模拟12.18】C
- 链表(抓包软件)
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- 【腾讯TMQ】Crash之防测漏篇
- C#下载http文件
- H5原生文件上传
- 一个微博介绍就能看出, 钟丽缇偏爱考拉, 冷落二女儿
- Linux安装openoffice和swftools
- 我的2016
- Android 手势解锁详解(包括一次解锁、二次设置密码)
- Axis2 webService的的准备工作
- 深入理解javascript原型和闭包(15)——闭包
- 实现日志类
- 微信浏览器手机调试神器TBS Studio