【问题标题】:html5 audio currentTime doesn't workhtml5 音频 currentTime 不起作用
【发布时间】: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,它就会工作。

标签: javascript html audio


【解决方案1】:

我解决了:

audio.pause();
audio.src = audio.src;

它重新加载音频标签,并将 currentTime 设置为 0

【讨论】:

  • 我遇到了同样的问题并使用了您的解决方案。但是它在 IE11 + IE 10 中引入了一个新错误:音频元素无法重播已经播放的声音,除非用户刷新整个页面。
  • readyState = 0 重新分配源后因此无法播放。
【解决方案2】:

这可能是浏览器兼容性问题。不幸的是,HTML5 音频 API 还不是很成熟。考虑使用“包装器”,例如 soundmanager2

另见较早的答案here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-17
    • 1970-01-01
    • 2020-04-29
    • 2012-05-26
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    • 1970-01-01
    相关资源
    最近更新 更多