兼容安卓和苹果移动端就input调起手机相册和相机
Posted AndreaLi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了兼容安卓和苹果移动端就input调起手机相册和相机相关的知识,希望对你有一定的参考价值。
以下这么写的话,苹果手机可以调起相机和相册功能,但是安卓手机只能调起相册;
<input id="upLicense" onchange="preview(this,0)" type="file" name="upLicense" >
<input id="upLicense" onchange="preview(this,0)" type="file" name="upLicense" accept="image/*" capture="camera">
而这么写的话,可以让安卓手机同时调起相机和相册,但是,苹果手机却只能调起相机:
<input id="upLicense" onchange="preview(this,0)" type="file" name="upLicense" accept="image/*" capture="camera" multiple>
所以,综上结合,可以在一开始的时候这么写:
<input id="upLicense" onchange="preview(this,0)" type="file" name="upLicense" accept="image/*" capture="camera" multiple>
然后在页面js中这么写:
$(function()){
compatibleInput();
}
// 判断当前是否属于ios移动端,兼容input同时调用手机相册和相机
function compatibleInput(){
//获取浏览器的userAgent,并转化为小写
var ua = navigator.userAgent.toLowerCase();
//判断是否是苹果手机,是则是true
var isIos = (ua.indexOf(‘iphone‘) != -1) || (ua.indexOf(‘ipad‘) != -1);
if (isIos) {
$("input:file").removeAttr("capture");
};
}
以上是关于兼容安卓和苹果移动端就input调起手机相册和相机的主要内容,如果未能解决你的问题,请参考以下文章
Android-混合开发H5 能直接调起原生的相册和相机吗?
一行代码实现安卓照片选取上传服务器,并适配安卓7.0无法调起相机的问题