2011-03-17 164 views
5

如何在音频标签准备播放时获得回拨。 (告诉用户,在执行我自己的控件时)HTML5音频onLoad

使用Chrome。

回答

7

只对视频元素做了这个,但它应该适用于音频。

首先,你不能绑定事件,我不知道为什么这是行不通的。所以你必须使用setTimeout。

示例使用jQuery:

$(function(){ 
    var audioReady = function(){ 
     if (youraudioelement.attr('readyState')) { 
      alert("it's ready!"); 
     } else { 
      setTimeout(audioReady, 250); 
     } 
    } 
    audioReady(); 
} 

更多信息:http://www.w3.org/TR/html5/video.html#the-ready-states

+0

不是最优的,但我想没有别的选择了......谢谢 – yydl 2011-03-17 22:07:20

+1

刚刚检查了'loadeddata'事件,它在IE,Chrome和FF的最新版本中运行良好。尚未测试旧版浏览器或移动设备。 – 2012-06-12 01:05:30

4

你能不能绑定到onloadeddata事件?这个对我有用。 W3C Reference

+0

这是更好的anwser – 2014-03-10 19:51:12

0

你看过canplaythrough事件吗?