-1

我正在尝试将变量传递给 JavaScript 函数并使用 HTML5<audio>元素播放它。

如果我将字符串参数传递给函数,这只是一个文件,我会播放它。但是如果我传递一个数组,我想逐首歌播放整个数组。

这是我的基本想法:

function playSound(sound) {
    var audio = document.getElementById('sound');
    if(sound instanceof Array) {
        // Play the whole array
    }
    else {
        // Play only one file
        audio.src = sound;
        audio.play();
    }
}

你可以帮帮我吗?

4

1 回答 1

1

您可以继续playSound循环调用并将调用绑定到onended

if (sound instanceof Array) {
    audio.src = sound.shift();
    audio.play;
    if (sound.length) {
        audio.addEventListener('ended', function () {
            playSound(sound);
        });
    }
}
于 2013-03-28T01:03:11.800 回答