<audio id="stream" preload='none'>
<source src="http://195.10.228.6:8035/canal.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
<a href="#" id="audioControl">play!</a>
<script>
var stream = document.getElementById('stream'),
ctrl = document.getElementById('audioControl');
ctrl.onclick = function () {
// Update the Button
var pause = ctrl.innerHTML === 'pause!';
ctrl.innerHTML = pause ? 'play!' : 'pause!';
// Update the Audio
var method = pause ? 'pause' : 'play';
stream[method]();
// Prevent Default Action
return false;
};
</script>
所以上面的代码工作正常,它允许我播放/暂停广播节目的直播。然而,唯一的问题/次要问题是加载。您必须在应用程序打开后等待加载大约10秒才能在此期间访问应用程序的所有功能。此外,如果您在流加载之前点击播放按钮,则除非应用关闭并重新打开,否则它将无法加载。我没有尝试过刷新,因为我尚未构建该功能。所以我不确定这是否适用于应用程序。
基本上问题是如何阻止这种延迟?或允许它在某人打击期间/之后加载?
phonegap build btw
答案 0 :(得分:0)
我已经看到了一些这方面的报告,但从来没有一个可靠的答案。要检查的一件事是流服务器上的缓冲时间设置。可能是服务器端而不是客户端。
至于禁用播放按钮直到它实际上已经播放,请尝试:
idOfYourAudioTag.addEventListener("playing", function() {
//enable your button here
});
如果&#34;播放&#34;事件发生得太早,你可以尝试其他事件监听器。请参阅此网址中的活动部分:http://www.w3schools.com/tags/ref_av_dom.asp