我是Javascript的初学者。我正在尝试做一个可以播放阵列音频文件的小项目。下面的代码在annyang API中。我的想法是在说出某些单词后等待10秒并播放数组中的第一个元素,然后等待10秒,播放数组的第二个元素,依此类推。因此,我使用for循环,但我不知道为什么,它总是扮演'oh_interesting_why'这是第三个要素。
var playList = ["tell_me_more", "why", "oh_interesting_why"];
var dir = "sound/";
var extention = ".wav";
var i;
var agent = navigator.userAgent.toLowerCase();
if (agent.indexOf('firefox') != -1 || agent.indexOf('opera') != -1) {
extention = ".wav";
}
//audio = new Audio();
for (i = 0; i < playList.length; i++) {
audio = new Audio();
//audio = dir + playList[i] + extention;
audio.src = dir + playList[i] + extention;
audio.load();
setTimeout(function() {
audio.play();
}, 10000);
}
audio.loop = false;
我一直在苦苦挣扎2天。无法弄清楚原因。 我打开使用jQuery,Javascript或HTML5。请帮我!! 先感谢您。
答案 0 :(得分:0)
我通过使用onended函数来解决这个问题。以下链接是解决方案。
stackoverflow.com/a/27364285/8105243