我正在使用javascript创建一个掷骰子游戏。我几乎所有的东西都按照它应该的方式工作,只需做一些小的调整,但我坚持的部分是创建某种类型的类型函数,或者可能使用setTimeout()。我有一个.wav文件播放掷骰子的声音,但我想要做的是如果用户赢了或丢失了骰子的声音被滚动后出现(在.wav文件停止播放骰子之后)滚动的声音)。
答案 0 :(得分:1)
我认为您无法检测到声音文件结尾的任何事件。 您应该播放声音,然后启动具有硬编码持续时间的setTimeout函数。
例如:
setTimeout(diceRolled,3000); //these are millisecond -> 3 seconds wait
// ..........
function diceRolled(){
//do anything here
}
答案 1 :(得分:0)
我会说“正确”的答案是使用html5音频并绑定到其各种事件 - 您可以获取文件的持续时间,检测声音是否已完成播放,获取其当前播放位置等。
但是,使用起来相当复杂,我不建议将其用于此目的或启动javascripters。
http://html5doctor.com/html5-audio-the-state-of-play/
http://www.html5rocks.com/en/tutorials/webaudio/intro/