Android / IOS Chrome无法播放HTML5音频

Gir*_*ish 5 javascript html5 android google-chrome ios

我目前正在使用HTML5音频在我的角度应用程序中的特定按钮上播放声音,所有浏览器中的声音都传入桌面,但是Android / IOS浏览器存在问题。

所以我尝试了以下事情:

1)。首先,我尝试通过js播放声音,但是由于Android / IOS chrome不允许我使用audio.play(),因此它没有出现,它总是给我错误,Uncaught(承诺)DOMException:play()只能是由用户手势启动。

2)。然后,如果不允许我使用audio.play,那么为避免起见,我首先在html中创建了一个具有autoplay属性的音频元素,以测试音频标签是否在移动设备上运行,并发现它在运行。

<audio id = "audio1" src="s.mp3" type="audio/mpeg"  autoplay></audio> 
Run Code Online (Sandbox Code Playgroud)

因此,我所做的是我使用javasript创建了一个具有autoplay属性的html音频元素,因为我希望在单击按钮而不加载时播放音频。

                  var source = "s.mp3";
                  var element = document.createElement('audio');
                  element.setAttribute("src",source);
                  element.setAttribute("autoplay","");
                  document.body.appendChild(element);
Run Code Online (Sandbox Code Playgroud)

但这在手机chrome中不起作用,对我来说看起来很奇怪,因为我刚刚创建的元素具有与html中相同的属性。