我希望能够使用 javascript 和 HTML5 元素从回调函数播放音频文件。根据我的阅读,大多数移动设备播放 HTML5 音频的唯一方式是通过用户交互(即单击按钮等)。
我的情况略有不同。按钮单击事件使用回调函数进行 ajax 调用,并根据返回的结果,应该播放不同的声音。这在桌面浏览器上运行良好,但是 android 和 iPad 似乎都不支持这一点。
有谁知道任何解决方法?
示例代码显示如何初始化音频对象等:
var sound = new Audio('Sample.wav');
var sound2 = new Audio('Sample2.wav');
/// Button events etc here, stock standard stuff
function MyCallBack(e)
{
if(e.someValue)
sound.play();
else
sound2.play();
}
编辑: 我已经使用下面概述的类似解决方案解决了这个问题。在我播放的用户事件中,我立即暂停了声音。回调返回后,我继续播放适当的声音
hit.play(); hit.pause(); fail.play(); fail.pause();