javascript音频加载

javascript音频加载,javascript,html,audio,Javascript,Html,Audio,我做了一个javascript音频测试。除了audio.oncanplaythrough和audio.oneded(此2功能在Chrome上不起作用),所有功能都在Opera FF和Chrome中工作 var audio=新音频(“http://www.w3schools.com/html5/song.ogg"); audio.oncanplaythrough=函数(){ 音频播放(); } audio.onended=函数(){ 警报(“结束”); } 通过JavaScript添加并

我做了一个javascript音频测试。除了audio.oncanplaythrough和audio.oneded(此2功能在Chrome上不起作用),所有功能都在Opera FF和Chrome中工作


var audio=新音频(“http://www.w3schools.com/html5/song.ogg");
audio.oncanplaythrough=函数(){
音频播放();
}
audio.onended=函数(){
警报(“结束”);
}





通过JavaScript添加并播放声音

var audioElement = document.createElement('audio');
audioElement.setAttribute('src', 'loading.ogg');
audioElement.play();
获取歌曲文件路径和持续时间

audioElement.src;
audioElement.duration;
加载声音

var audioElement = document.createElement('audio');
audioElement.setAttribute('src', 'Mogwai2009-04-29_acidjack_t16.ogg');
audioElement.load()
audioElement.addEventListener("load", function() {
  audioElement.play();
  $(".duration span").html(audioElement.duration);
  $(".filename span").html(audioElement.src);
}, true);
停止一首歌

audioElement.pause();
变化量

audioElement.volume=0;
在歌曲中精确播放35秒

audioElement.currentTime=35;
audioElement.play();

oncanplaythrough
是一个事件,而不是一个方法,另一个事件称为
end
,而不是
onended

因此,你需要倾听事件并采取行动。尝试:

audio.addEventListener('ended', function() { 
   alert('ended');
}, false);


... 我问:如何使用audio.oncanplaythrough和audio.onned在Chrome:D中“oncanplaythrough”后面有一个空格。现在它可以工作了,谢谢,有(修复)!很抱歉。很高兴它解决了您的问题。这应该是
canplaythrough
audio.addEventListener('ended', function() { 
   alert('ended');
}, false);
audio.addEventListener('canplaythrough', function() { 
   audio.play();
}, false);