我无法在IOS设备上用javascript打开后摄像头
我的目标是通过网站读取二维码并将其保存到数据库中。我在安卓设备上没有问题,但在IOS设备上有问题 我无法在IOS设备上用javascript打开后摄像头。前摄像头工作,后摄像头不工作。这些也是我的密码 如何使用Instascan和HTML5 QR扫描仪我无法在IOS设备上用javascript打开后摄像头,javascript,html,ios,Javascript,Html,Ios,我的目标是通过网站读取二维码并将其保存到数据库中。我在安卓设备上没有问题,但在IOS设备上有问题 我无法在IOS设备上用javascript打开后摄像头。前摄像头工作,后摄像头不工作。这些也是我的密码 如何使用Instascan和HTML5 QR扫描仪 前置摄像机 后置摄像机 var scanner=new Instascan.scanner({video:document.getElementById('preview'),扫描周期:5,镜像:false}); scanner.add
前置摄像机
后置摄像机
var scanner=new Instascan.scanner({video:document.getElementById('preview'),扫描周期:5,镜像:false});
scanner.addListener('scan',函数(内容){
警报(内容);
//window.location.href=content;
});
Instascan.Camera.getCameras().then(函数(摄像头){
如果(摄影机长度>0){
scanner.start(摄像机[0]);
$('[name=“options”]')。在('change',function()上{
if($(this).val()==1){
如果(摄像头[0]!=“”){
scanner.start(摄像机[0]);
}否则{
警报(“未找到前摄像头!”);
}
}else if($(this).val()==2){
如果(摄像头[1]!=“”){
扫描仪启动(摄像机[1]);
}否则{
警报(“未找到倒车摄像头!”);
}
}
});
}否则{
控制台。错误('未找到摄像头');
警报(“未发现摄像头”);
}
}).catch(函数(e){
控制台错误(e);
警报(e);
});
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<script src="https://webrtc.github.io/adapter/adapter-latest.js"></script>
<div class="container-fluid">
<div class="row">
<div class="col">
<script src="https://rawgit.com/schmich/instascan-builds/master/instascan.min.js"></script>
<div class="col-md-6">
<video id="preview" class="p-1 border" style="width:100%;" playsinline></video>
<hr>
<div class="btn-group btn-group-toggle mb-5" data-toggle="buttons">
<label class="btn btn-primary active">
<input type="radio" name="options" value="1" autocomplete="off" checked> Front Camera
</label>
<label class="btn btn-secondary">
<input type="radio" name="options" value="2" autocomplete="off"> Back Camera
</label>
</div>
</div>
<script type="text/javascript">
var scanner = new Instascan.Scanner({ video: document.getElementById('preview'), scanPeriod: 5, mirror: false });
scanner.addListener('scan',function(content){
alert(content);
//window.location.href=content;
});
Instascan.Camera.getCameras().then(function (cameras){
if(cameras.length>0){
scanner.start(cameras[0]);
$('[name="options"]').on('change',function(){
if($(this).val()==1){
if(cameras[0]!=""){
scanner.start(cameras[0]);
}else{
alert('No Front camera found!');
}
}else if($(this).val()==2){
if(cameras[1]!=""){
scanner.start(cameras[1]);
}else{
alert('No Back camera found!');
}
}
});
}else{
console.error('No cameras found.');
alert('No cameras found.');
}
}).catch(function(e){
console.error(e);
alert(e);
});
</script>
</div>
</div>
</div>