在 HTML5 中使用音频标签时如何避免主播重新播放音乐?

Posted

技术标签:

【中文标题】在 HTML5 中使用音频标签时如何避免主播重新播放音乐?【英文标题】:How to avoid anchors to restart music when using audio tag in HTML5? 【发布时间】:2011-05-21 17:14:28 【问题描述】:

我创建了一个带有标签的 html 页面(适合播放 HTML5 mp3 音频)。

问题是我有锚点的链接,而 Internet Explorer 9 浏览器正在从头开始播放音频:每次单击同一页面的锚点都会重新播放音乐。

链接是:

< a href="#bio" > Biography < /a>

< a href="#contact" > Contact < /a>
...

锚点是:

<a name="bio"></a>
...
<a name="contact"></a>
...

音频标签是

<audio id="hello" src="hello.mp3" controls preload="auto" 
autobuffer style="display:none"></audio>

当用户点击带有锚点的链接时,如何避免音乐重启?

【问题讨论】:

您的锚点应该是&lt;a id="bio"&gt;&lt;/a&gt;name 在 HTML4 中已被弃用,更不用说 HTML5。 【参考方案1】:

@robertc,不错!

id 替换锚点的name 属性就可以了!

【讨论】:

【参考方案2】:

完整说明:IE 在点击指向 name="" 的链接时会触发 Document.onLoad 事件,而如果您使用 id="" 则不会。 Moz / Safari / Chrome / Opera 在这两种情况下都不会触发它。

【讨论】:

以上是关于在 HTML5 中使用音频标签时如何避免主播重新播放音乐?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 javascript 控制 HTML5 音频标签

Web应用程序的背景音频

在 HTML5 中更改音频标签的来源

HTML5 - 当另一个音频标签开始播放时如何停止音频?

如何停止 HTML5 的音频标签播放的音频

我在 html5 音频标签中播放音频时收到 [object MediaError]