html5 音频在 ios Safari 中不起作用
Posted
技术标签:
【中文标题】html5 音频在 ios Safari 中不起作用【英文标题】:html5 audio doesn't work in ios safari 【发布时间】:2017-07-15 00:58:50 【问题描述】:我有一个游戏,其中用户单击开始按钮,然后通过 setInterval 程序从数组中随机选择一个音频并播放它。除了野生动物园外,它在任何地方都可以正常工作。 我也尝试过使用 ResponsiveVoice API。它们都不起作用。 如下代码所示:
var audio = new Audio();
audio.src = 'blabla';
当用户点击开始时:
setInterval(function()
audio.play();
, 2000);
我该如何解决这个问题?
【问题讨论】:
【参考方案1】:如果您的音频文件在 safari 中根本无法正常工作(不仅仅是 setInterval js),那么问题可能出在文件类型上。
目前,Safari 不支持 flac 和 ogg 音频类型,但在其他浏览器中支持。 Opus 也是如此,另一种开源文件类型。
MP3 和 AAC 是最广泛支持的文件类型,其次是 .wav 网络音频的使用也得到了相当广泛的支持。
请参阅caniuse 了解更多信息。
【讨论】:
首先,音频格式为MP3。其次,音频文件在 safari 中有效,但仅当我在单击按钮后立即调用play()
时。似乎问题出在setInterval
非常感谢您的帮助,但不幸的是,我刚刚发现无法以我想要的方式在 safari 中播放音频。触摸或点击事件是播放音频所必需的。
@LeonidGordun 哦,不……这太糟糕了!哦,好吧,我想我们生活和学习(希望 Safari 也会改进!)以上是关于html5 音频在 ios Safari 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Javascript HTML5 play() 在 ios9 Safari 中不起作用?
aac 流的 HTML5 音频播放在 type="audio/mp4" 的 iOS 11 中不起作用