[传输]解决了Chrome浏览器无法自动播放音频和视频的问题

电脑杂谈  发布时间:2020-06-12 08:23:57  来源:网络整理

chrome浏览器没有声音_uc浏览起器下载最新版_chrome浏览器关闭声音

前言

在最新版本的Chrome浏览器(以及所有以Chromium为核心的浏览器)中,不再允许音频和视频自动播放. (某些Google的做法确实使开发人员感到沮丧). 即使您为视频或音频标签设置了自动播放属性,它也不会自动播放.

<视频自动播放>

如果您使用javascript代码明确调用play方法:

vdo.oncanplay = function(){

this.play();

chrome浏览器没有声音_chrome浏览器关闭声音_uc浏览起器下载最新版

};

您将在控制台中看到以下异常: 未捕获(承诺)DOMException.

分析原因

这是因为Chrome仅允许用户在主动触发网页后自动播放音频和视频. 实际上,严格来说,Chrome不允许在用户触发网页之前播放音频,而视频实际上是无限的. 但是由于视频文件还包含音频,因此也被禁止. Chrome的目的是防止开发人员滥用自动播放功能并骚扰用户.

现在您知道原因了,开始寻找解决方案.

一般解决方案

chrome浏览器关闭声音_chrome浏览器没有声音_uc浏览起器下载最新版

更常见的是将视频标签的静音属性设置为静音,以便可以自动播放视频,但没有声音. 然后,当用户在网页上触发了任何触发器之后,请删除静音功能. 或者让用户手动打开音频(腾讯视频会这样做).

<视频自动播放已静音>

document.body.addEventListener('mousedown'chrome浏览器没有声音,function(){

vdo.muted = false;

},否);

但是用户体验毕竟不是很好. 接下来,介绍一种非常规方法.

chrome浏览器没有声音_uc浏览起器下载最新版_chrome浏览器关闭声音

hack方法

尽管Chrome浏览器对视频标签和音频标签有非常严格的限制,但并没有限制其他也可以播放音频和视频的iframe标签. 那么我们可以使用iframe触发权限吗?