我正在尝试使用html5音频元素中的google translate播放音频文件。我的代码是:
<script>
$("#play_button").click(function(){
$("#memory")[0].play();
});
</script>
<audio id="memory" preload="auto" style="display: none; ">
<source src="http://translate.google.com/translate_tts?tl=en&q=hello">
</audio>
通常会发出声音说“你好”。这适用于我的徒步旅行,但不是谷歌浏览器,我想要它。
如果我“预加载”一次声音(在另一个标签中加载网址),然后再次在我的页面上运行此代码,它就能正常工作。可能是因为音频被加载到某个缓存中。 (我对此知之甚少......)
无论如何都要跟踪音频是否已加载并让浏览器在尝试播放声音之前等待该音频。或者是将文件下载到服务器然后通过新文件引用我的音频的解决方案?
答案 0 :(得分:0)
浏览器以与html文件中显示的顺序相同的顺序解释html。如果将脚本标记移动到音频标记下方,则应在运行脚本之前加载音频。