首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在事件侦听器中播放音频仍会出现错误

在事件侦听器中播放音频仍会出现错误
EN

Stack Overflow用户
提问于 2018-12-18 10:08:40
回答 1查看 202关注 0票数 2

我在window load侦听器函数中有这个。

代码语言:javascript
复制
var audio = new Audio();
audio.src = "assets/silence.mp3";
audio.load();
document.getElementById("body").addEventListener(
  'touchstart',
  function(evt){ audio.play(); audio = 0; },
  {capture:false,once:true,passive:true}
);

在android上的chrome (远程调试打开)中,我触摸屏幕,它(正确地)触发尝试播放音频。但是,它会失败,并将以下内容记录到控制台:

(index):65 Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first.

如果不是通过用户交互事件侦听器,我如何才能以一种确保用户启动的方式触发音频呢?

EN

回答 1

Stack Overflow用户

发布于 2020-05-03 03:59:42

我在做网络钢琴的时候也遇到了同样的问题。浏览器在加载时为钢琴充电,所以你可以在点击之前按下(实际上是触摸屏幕)钢琴键。我所做的是添加一个带有按钮的启动屏幕来开始游戏,这解决了这个问题,因为你必须在触摸钢琴键之前点击一些东西。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53825462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档