通过常规浏览器加载(而非ajax)执行navigator.getUserMedia()
效果良好:
<script>
if(navigator.getUserMedia) {
navigator.getUserMedia({audio: true}, startUserMedia, function(e) {
__log('No live audio input: ' + e);
});
} else {
__log('fail ');
}
</script>
但是,当我尝试通过$.getScript
或在通过$.ajax
加载的文档中加载此脚本时,它似乎根本无法执行。奇怪的是,它没有执行成功的函数startUserMedia,也没有执行记录"没有实时音频输入"的函数。
用Ajax执行方法navigator.getUserMedia()
是否不兼容?
我看了一遍这些文件,看不出有什么能说明这一点的。任何帮助/意见/指导都将不胜感激,过去几天我一直在讨论这个问题,但没有成功。
Ajax正在加载的文档的Gist:https://gist.github.com/markbratanov/859df0b1a70d1e15446c
就我而言,如果其他人也处于同样的情况,那么如果通过Ajax加载getUserMedia()
,它将无法正常工作。不知道为什么,但我已经进行了几次测试,但都失败了。
使用getUserMedia的最佳方式是在浏览器加载时。
至少是我的看法。希望这能帮助到别人。