Vin*_*nce 5 html javascript audio
我创建了一个新的音频元素,并且可以成功加载、播放、暂停、静音等。但是,我注意到某些浏览器(FF、Opera)在我执行 play() 时总是会触发 canplaythrough 事件。Chrome 也有这方面的问题。但 Safari 的行为符合预期...该事件仅在 readState 更改为 HAVE_ENOUGH_DATA 后触发一次。
我还注意到没有浏览器会让我删除这个事件。
不断触发 canplaythrough 很烦人,因为我不一定希望每次播放音频文件时都执行附加到 canplaythrough 事件的处理程序。当 canplaythrough 被多次触发时,我在 Chrome 上也遇到了一些奇怪的播放错误。
谁能解释一下 canplaythrough 发生了什么以及为什么它在最初被触发后无法被删除。
谢谢。
我已经能够在 Chrome(和 Safari,如果我没记错的话)中删除 canplaythrough 事件。
如下例所示的代码似乎对我有用:
// add event
audioElem.addEventListener("canplaythrough", displayHome, false);
// later remove event before triggering play
audioElem.removeEventListener("canplaythrough", displayHome, false);
和你一样,当我没有在 Chrome 中删除该事件时,我注意到一些奇怪的播放问题。
| 归档时间: | 
 | 
| 查看次数: | 6039 次 | 
| 最近记录: |