javascript - android 微信浏览器不能用H5 input上传吗?
本文介绍了javascript - android 微信浏览器不能用H5 input上传吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
采用h5 input上传,在ios普通浏览器和微信浏览器都正常上传,但在android微信浏览器不行,非微信浏览器是正常可以的
报错信息如下:
weixin://preInjectJSBridge/fail
不过我觉得报错信息与上传功能没有关系
解决方案
android不管什么情况都会出现
weixin://preInjectJSBridge/fail
所以不是这个问题。
微信android是可以使用html5的xmlhttprequest+formdata上传文件的。
document.querySelector('#file').addEventListener('change',function(e){
var item = e.target.files[0];
var data = new FormData;
data.append('file', item);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://up.com', true);
//事件监听
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
//上传完成了
alert(xhr.responseText);
}
};
xhr.onerror = function (error) {
throw new Error(error);
};
xhr.upload && (xhr.upload.onprogress = function (e) {
console.log(parseInt((e.loaded / e.total) * 100))
});
xhr.send(data);
},false);
这篇关于javascript - android 微信浏览器不能用H5 input上传吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文