以下是我遇到的问题现象:
<input id="uploadInput" type="file" maxlength="6" accept="image/*" multiple="multiple"/>
有个属性capture可以调用相机,摄像,录音功能。
加上multiple之后capture没有任何用。
下面是我在开发中遇到的某些手机表现的差异:
不加capture属性,但是加上multiple属性,苹果手机和一般安卓手机(小米note4,一加,魅族,华为等)都可以默认同时唤起相机相册文件。但是小米mix2只能唤起相册,不能唤起相机。(目前测试机中只有小米mix2会这样,可能覆盖不够全面)。
如果加上capture这个属性,不加参数。苹果手机和一般安卓机都只唤起相机。而小米mix2唤起相册相机文件。
所以只针对小米mix2做了特殊处理:
if (getIos()) {
$('#uploadInput').attr('capture','');
}
function getIos() {
var ua=navigator.userAgent.toLowerCase();
if(ua.indexOf('mix')>-1){
return true;
}else {
return false;
}
}