我正在创建一个语音/文本备忘录 Web 应用程序。这里: http: //gustavstromberg.se/sandbox/html5/localstorage/看看它的源码(很短,大部分是css)
这是:
- 据我所知,语音识别仅适用于 chrome。
- 本地存储,将笔记存储为文本。
- 谷歌翻译文本到语音。
一切正常,但在不同的浏览器中。语音输入完美,仅在 chrome 中。文字转语音在 safari 中工作。
要将备忘录动态加载到我使用的音频>源元素中:
$("#spokenmemory").html("<source src='http://translate.google.com/translate_tts?tl=en&q="+localStorage['memory']+"' />");
(localStorage['memory'] 包含我存储的文本备忘录)
要使用谷歌的文字转语音功能播放我最近保存的备忘录,我使用:
$("#listenplay").click(function(){
$("#spokenmemory")[0].play();
});
(spokenmemory 是我的音频标签的 id 属性)
这在 chrome 中不起作用,但如果我访问翻译链接(例如:http ://translate.google.com/translate_tts?tl=en&q= Japan,我的文本备忘录是“日本”)单独的浏览器选项卡,然后返回我的站点并重新加载页面(保存相同的文本备忘录“日本”),播放正常。多么奇怪,多么令人讨厌!
有人知道这种奇怪的行为吗?