HTML5 <audio>:点击下一首歌</audio>时停止加载/缓冲

时间:2013-12-06 15:33:55

标签: javascript jquery html5 audio

我有一个小型网站,大约有40个mp3播客,您可以使用html5标签收听。

每个播客大约一个小时,大小为100mb。

这是我的问题:

假设我按下PODCAST 1上的PLAY,它开始播放,并将其余的播客预加载到100%。

现在让我说我想玩PODCAST 2,我按下第一个暂停,然后按第二个播放。

如何停止第一个播客的预加载/缓冲,以便所有带宽都可用于预加载/缓冲第二个播客?

我看着jplayer认为它正在这样做但是通过查看代码,当在同一页面上使用多个玩家时,所有它都会这样做&#34;暂停&#34;其他玩家,它没有&#34;停止&#34;预加载/缓冲。

知道我怎么能这样做吗?

非常感谢:)

编辑:我已经使用preload =&#34; none&#34;

1 个答案:

答案 0 :(得分:0)

我遇到了完全相同的问题并通过将播放器src属性设置为一个非常短暂的无声mp3文件来解决它。例如..

var silent_file = 'http://example.com/silent.mp3';
var blogstream = 'http://example.com/blogstream';
var audioelement = document.getElementById( 'audioplayer' );

function stop(){
    audioelement.src = silent_file;
    audioelement.pause();
}
function play(){
    audioelement.src = blogstream ;
    audioelement.play(); // not necessary if audio element has autoplay
}