navigator.mozGetUserMedia已被navigator.mediaDevices.getUserMedia取代

时间:2017-08-14 02:00:26

标签: javascript jquery html firefox barcode

我在条形码扫描程序插件上有错误。它在Chrome中工作,但在Firefox中不起作用。我在控制台中收到错误:

  

navigator.mozGetUserMedia已被替换为   navigator.mediaDevices.getUserMedia

我的演示网址:https://rawgit.com/saravanasksp/myproject/master/src/index.html

任何人请告诉我这个问题。

1 个答案:

答案 0 :(得分:2)

您应该能够更改您的函数调用。传递给每个的约束对象是相同的,主要区别在于 navigator.mozGetUserMedia 依赖于回调。新的 navigator.mediaDevices.getUserMedia 返回一个 Promise。

所以你有

navigator.mozGetUserMedia(constraints, 
   stream => handleStream(stream), 
    err => handleError(err));

你现在有

navigator.mediaDevices.getUserMedia(constraints)
.then(stream => {handleStream(stream)})
.catch(err => {handleError(err)}

对不起,我应该添加链接

https://developers.google.com/web/updates/2015/10/media-devices https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia