我认为发现了一个有趣的错误。使用 x-webkit-speech 制作一个带有语音到文本输入的简单 html 页面,例如:
<html><body>
<input type="text" id="speech" x-webkit-speech />
</body></html>
如果您在 chrome 中打开它并单击输入中的麦克风,则一切正常。
现在,创建一个普通的扩展,使用“permissions”:[“tabs”],并在弹出脚本的某处创建一个面板或detached_panel窗口指向前一个 html 页面。举个例子 :
chrome.windows.create({
url: "index.html",
width: 320,
height: 240,
focused: true,
type: "detached_panel"
});
现在单击输入中的麦克风:没有任何反应,nada。
这是一个已知的错误 ?
另外,我已经用 type="popup" 或 type="normal" 进行了测试,它工作正常,所以这个错误似乎只在面板和 detached_panel 窗口上。另外,我尝试将它放在面板窗口内的 iFrame 中,但仍然无法正常工作。请注意,x-webkit-speech 在扩展气泡中也不起作用。此外,我开始使用 Chrome 提出的实验性 API,但他们需要启用实验性 api 标志,而 x-webkit-speech 不需要。
感谢您提供任何线索。