HTML/JS-在页面加载时播放音频文件 [英] HTML/JS - Play audio file on page load
问题描述
打开网站后,我会播放音频文件(循环播放).
我知道浏览器对自动播放有限制,但是可以使用JavaScript自动播放任何音频吗?
谢谢!
I would play an audio file (on loop) after I open my website.
I know browsers have restrictions about autoplay, but is it possible to autoplay any audio using JavaScript?
Thank you!
推荐答案
目前尚无任何保证的方法.MDN具有遵循常规指南:
There currently isn't any guaranteed way; MDN has the following general guidance:
通常,您可以假定只有以下至少一项为真时,才允许媒体自动播放:
As a general rule, you can assume that media will be allowed to autoplay only if at least one of the following is true:
- 音频被静音或其音量设置为0
- 用户已与该站点进行了交互(通过单击,点击,按下键等)
- 如果该网站已被列入白名单;如果浏览器确定用户经常与媒体互动,则可能会自动发生这种情况,也可能通过首选项或其他用户界面功能手动发生这种情况
- 如果使用自动播放功能策略向及其文档授予自动播放支持.否则,播放可能会被阻止.导致阻塞的确切情况以及将网站列入白名单的具体方法因浏览器而异,但以上是遵循的良好指导原则.
Chrome和Safari的当前政策是您不能仅在页面加载后播放音频(除非已将其静音).
Current policies of Chrome and Safari are that you can not just play audio once the page has loaded (unless it's muted).
Chrome浏览器具有以下政策:
Chrome has the following policies:
- 始终允许静音的自动播放.
- 在以下情况下,允许自动播放声音
- 用户已与域进行了交互(单击,点击等).
- 在桌面上,已经超过了用户的媒体参与度索引"阈值,这意味着该用户以前曾播放带声音的视频.
- 用户已将该网站添加到移动设备上的主屏幕上,或在桌面上安装了PWA.
- 顶部框架可以将自动播放权限委派给其iframe,以允许自动播放声音.
Safari浏览器具有有关以下指导自动播放:
Safari has the following guidance regarding autoplay:
- 网站应假定使用或要求用户点击手势才能播放.
- 检测自动播放是否被拒绝很重要,因为用户现在可以关闭所有形式的自动播放,包括无声视频.
- 自动播放限制是基于每个元素授予的.
这篇关于HTML/JS-在页面加载时播放音频文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!