本文主要是介绍某些微信浏览器(比如小米手机mix2 8.0,Android 6:ZTE 7 max)input标签file属性,无法选中图片或者调用相机,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.初始化wxConfig (appId,timestamp,nonceStr,signatur,jsApiList)
window.localStorage.setItem('currentUrl', window.location.href);
2.wx.checkJsApi({jsApiList: ['chooseImage'] // 需要检测的JS接口列表success: function(res) {// 以键值对的形式返回,可用的api值true,不可用为false},});3.wx.chooseImage({count: 1, // 默认9sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有success: function (res) {var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片}
});4.wx.getLocalImgData({localId: req.localIds[0].toString(),success: function (res) {const localData = res.localData;;}});
5. let n = urlData.length;let u8arr = new Uint8Array(n);while (n--) {u8arr[n] = bstr.charCodeAt(n);}return new Blob([u8arr], { type: mime });
1、multiple=“multiple” capture=“camera”
安卓: 可拍照可图库
iOS : 只可拍照
2、multiple=“multiple” 无capture
安卓: 只可拍照
ios :可拍照可图库
3、无multiple capture=“camera”
安卓:只可图库
ios:只可拍照
4、无multiple 无capture
安卓ios 都可拍照可图库,需要多选功能需要使用wx的sdk,需要配置公众号信息
解决方案
//获取浏览器的userAgent,并转化为小写var ua = navigator.userAgent.toLowerCase();//判断是否是苹果手机,是则是truevar isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1);if (isIos) {$("input:file").removeAttr("capture");};
这篇关于某些微信浏览器(比如小米手机mix2 8.0,Android 6:ZTE 7 max)input标签file属性,无法选中图片或者调用相机的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!