javascript - 在没有用户交互的情况下如何下载和播放音频片段?

标签 javascript user-interface audio user-interaction

在用户与页面进行交互之前,是否可以通过编程方式开始音频播放?
使用以下JavaScript:

console.log('Playing abc.');
XYZ.abc = new Audio('audio/abc.wav');
XYZ.abc.play();
我收到一条错误消息,

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


当我单击页面时,该按钮消失了。
是要求用户单击以开始声音的标准UI模式,还是有漏洞通过编程方式执行此操作?
谢谢,

最佳答案

因此,问题在于用户通常不希望音频来自网站,因此chrome需要默认情况下将您的音频或视频元素静音。对于<audio>标记,您需要添加静音属性,因此-> <audio muted>js元素分别具有.muted属性。因此,您需要的是XYZ.abc.muted = true;

关于javascript - 在没有用户交互的情况下如何下载和播放音频片段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64433264/

相关文章:

javascript - selenium.common.exceptions.WebDriverException : Message: unknown error: arguments[0].点击不是Selenium Python中使用execute_script()的函数

java - 如何在 javafx 中将图像裁剪成碎片,以便用图 block 创建游戏拼图?

java - 创建一个存储语音的按钮

matlab - 在音频文件中获取期间

javascript - ExtJS : how to make a custom modal window with MessageBox buttons?

php - 使用 jQuery 获取页面上的复选框并将值放入字符串中以发送 ajax 调用

java - 用于在 10 分钟内触发 Activity 的简单 AlarmManager 示例

java - 在java中切换值

audio - AAC mpeg2和AAC mpeg4编码有什么区别?以及如何提取ADTS

javascript - 如何从 Bootstrap 导航栏中删除默认填充