上传插件webupload之调用拍照兼容问题

在项目中,移动端用到了webupload插件来实现上传功能(我觉得这个插件挺好用的,所以无论pc还是移动端我都使用了这个插件来做上传功能)

在移动端要调起拍照功能,实现上传,须得在webuploader.js中加上这句代码(大概在4882行左右):

 input.attr( 'capture', 'camera' ); 

加上这个属性,你就可以调起拍照的功能了,

但是这里有个小问题:

在iphone上和android的手机浏览器中,加了这个属性之后就只能使用拍照上传了,无法通过相册选择照片上传

因此需要在此做个兼容处理,在android的微信浏览器中加上这个属性,代码如下:

var ua = navigator.userAgent.toLowerCase();//获取浏览器的userAgent,并转化为小写——注:userAgent是用户可以修改的
var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1);//判断是否是苹果手机,是则是true
var iswx = (ua.indexOf('micromessenger') != -1 );//判断是否是微信浏览器,是则是true
if (!isIos && iswx) {
    input.attr( 'capture', 'camera' );
};

这样就可以实现拍照和相册的上传功能了,无论在微信浏览器,还是其他浏览器,iphone还是android都可用呢!

posted @ 2018-09-26 11:20  Flying曾  阅读(1708)  评论(0编辑  收藏  举报