为啥 HTML <audio> 元素不能在任何浏览器中自动播放?

Posted

技术标签:

【中文标题】为啥 HTML <audio> 元素不能在任何浏览器中自动播放?【英文标题】:Why is the HTML <audio> element not autoplaying in any browser?为什么 HTML <audio> 元素不能在任何浏览器中自动播放? 【发布时间】:2021-11-29 00:37:35 【问题描述】:

我正在为一个学校项目制作一个互动故事。我正在尝试制作适合我各种结局的音乐。

我最初使用了几次,它在 Chrome 上运行了一两次,然后停止运行。

<audio class="ending-tunes" src="../../../../../Audio/Stonebank - Life & Death.mp3" type="audio/mpeg" autoplay></audio>

我查看了这个answer,尝试了第一个解决方案,但它们都没有工作,这是预期的,因为我后来发现一条评论说它不再有效但值得一试,我没有看到那个评论直到我试过之后。 我也试过这个简单的脚本:

var audio = Document.getElementsByClassName("ending-tunes");
audio.play();

但它也不起作用。

我还查看了this,它告诉我 Google 对自动播放有一些政策。考虑到这些信息,我决定去 Edge 并在那里运行它,认为 Edge 可以工作。它没有。我的项目明天到期,所以如果你看到这个并且可以回答,请马上回答。非常感谢!

【问题讨论】:

您的用户需要与页面进行交互才能产生任何声音。 @Kaiido 是的,这就是我从我引用的第二个答案中学到的。这只是意味着用户必须点击任何地方,是吗?如果是这样,我现在可以告诉你,我试过了,但没有成功 那么您可能还有其他问题。您可以通过单击元素的控件来播放这些文件吗? @Kaiido 是的,我可以 【参考方案1】:

这是一个浏览器故障。我用另一个音频元素制作了一个新的 html 文件,它起作用了,所以我从头开始,用我的方式找到每个带有音频的页面,它们都起作用了。感谢大家的尝试!

【讨论】:

您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。

以上是关于为啥 HTML <audio> 元素不能在任何浏览器中自动播放?的主要内容,如果未能解决你的问题,请参考以下文章

为啥需要 <video> 或 <audio>?

HTML5 音频(Audio)元素使用详解

<audio> 元素与控件的轨迹栏不移动

暂停除已激活的玩家之外的所有其他玩家。 <audio> 元素的 jQuery 音频插件

播放 <video> 时将 <audio> 元素设置为 50% 的音量

video元素和audio元素