在当前播放结束之前预先加载播放列表中的下一首歌曲

时间:2015-04-18 21:30:37

标签: javascript audio web web-audio

我制作的小型媒体播放器工作正常,但我想制作它以便每首歌曲之间没有更多的加载

我知道preload属性,但它只是在第一次加载页面时预加载音乐,所以我觉得这样不会工作

有没有办法做到这一点?也许使用网络音频API?

1 个答案:

答案 0 :(得分:3)

当您开始播放歌曲时,您可以观看音频的play事件,并且已经开始预加载队列中的下一首歌曲。

这是我用来预加载音频的功能,您可以随时使用它,而不仅仅是在第一次加载页面时:

function preloadAudio (filename) {

    var sound = new Audio();
    sound.preload = 'auto';

    sound.addEventListener('canplaythrough', function () {
        // now the audio is ready to play through
    });

    document.body.appendChild(sound);

    sound.src = filename;
    sound.load();

}