html5 音频 currentTime 不起作用
Posted
技术标签:
【中文标题】html5 音频 currentTime 不起作用【英文标题】:html5 audio currentTime doesn't work 【发布时间】:2013-06-06 15:55:44 【问题描述】:我不知道为什么,但它不起作用。 我有这个:
function stop()
audio.pause();
audio.currentTime = 0;
当我将 currentTime 的值更改为 0 时,没有任何变化……也就是说,currentTime 继续具有以前的值。
【问题讨论】:
您在什么平台或浏览器上看到此行为?我无法重现您的问题:jsfiddle.net/8SPs7 我正在尝试使用 chrome 找到问题了!!它似乎不适用于 .mp3 文件,您的 jsfiddle 包含一个 .ogg 文件...我更改它添加了一个 mp3,但它不起作用...jsfiddle.net/8SPs7/3 我有一个 mp3 并将其设置为 currentTime = 0 不会做任何事情。铬或火狐。没有效果.. ????♂️ 唯一不同的是:我暂停它,设置时间并立即开始播放。 (通过设置播放头)。只要 currentTime 为 != 0,它就会工作。 【参考方案1】:我解决了:
audio.pause();
audio.src = audio.src;
它重新加载音频标签,并将 currentTime 设置为 0
【讨论】:
我遇到了同样的问题并使用了您的解决方案。但是它在 IE11 + IE 10 中引入了一个新错误:音频元素无法重播已经播放的声音,除非用户刷新整个页面。 readyState = 0 重新分配源后因此无法播放。【参考方案2】:这可能是浏览器兼容性问题。不幸的是,html5 音频 API 还不是很成熟。考虑使用“包装器”,例如 soundmanager2。
另见较早的答案here
【讨论】:
以上是关于html5 音频 currentTime 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
HTML5 音频:设置 currentTime 然后在 iPhone 上播放自发倒带 50-100 毫秒
HTML5 音频元素 - 搜索滑块 - 无法在“HTMLMediaElement”上设置“currentTime”属性:提供的双精度值是非有限的