浏览器自动播放音视频视频
2025-06-24 12:16:24
来源:新华网
目录。
前言。
浏览器自动播放策略。
战略细节:
实现方案 。
方案1: 互动后播放。
方案2: 互动后的声音。
总结。
前言。
在开发过程中可能会遇到这样的需求,当用户打开页面时,,视频或音频需要自动播放#xff0c;按理说,打开页面时play()不就完成了,但实际情况显然不是,否则,我就不会得到这篇文章,要实现这一需求,首先要了解浏览器的自动播放策略。给出相应的解决方案。然后给出相应的解决方案。
浏览器自动播放策略。
自Chrome66以来,Chrome浏览器的自动播放策略已经生效,动机是。改善用户体验。
战略细节:
Chrome 自动播放政策非常简单:
- 始终允许静音自动播放。
- 在下列情况下,允许自动播放带声音的:
- 用户已与当前域进行了交流。互动(click、tap)
- 在桌面设备上c;用户的==媒体参与度==指数阈值已超过。,这意味着用户以前播放过有声视频。
- 用户已经将网站添加到移动设备的主屏幕上或安装在桌面上 PWA。
- 顶部帧可以委派自动播放权限 iframe,允许自动播放声音。
==媒体参与度(MEI, Media Engagement Index)==
媒体参与度 (MEI) 就是要衡量个人在网站上使用多媒体的倾向。
它是一个数字,可通过 chrome://media-engagement/ 查看。
数值越高,#xff0c;用户对该网站的媒体参与度越高,自动播放的机会越大。
但是对于开发者来说,:
不能通过技术手段改变媒体参与度的计算规则。
不同版本的浏览器可能会改变媒体参与的计算规则。
。
实现方案。
首先,当用户直接进入页面时,play(),可以发现视频没有播放,并且报错。Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first。
Document
这个错误意味着浏览器试图在没有用户交互的情况下播放媒体文件,但因为这是不允许的,因此,浏览器拒绝了操作。如果没有这种保护机制,然后网站可以在用户不知情的情况下播放音频和视频,这是不安全和不负责任的行为。如果没有这样的保护机制然后网站可以在用户不知情的情况下播放音频和视频,这是不安全和不负责任的行为。 。
。
方案1: 互动后播放。
先试试自动播放如果发生异常引导用户进行互动操作,然后播放。
互动后播放
进入页面后,发现不能自动播放#xff0c;此时显示开始播放按钮点击后,用户开始播放。
方案2: 互动后的声音。
方案2: 互动后发出声音。
- 先静音播放,然后根据是否可以自动播放,决定是否取消静音假如:
- 能自动播放取消静音。
#xff0不能自动播放c;引导用户在互动操作后取消静音。
进入页面后,静音播放视频然后判断是否允许自动播放如果允许,如果允许的话c;取消静音,但是这里不允许所以显示打开声音按钮。 。
引用index.css文件内容如下:
* { margin: 0; padding: 0; box-sizing: border-box;}.vdo-container { width: 50%; margin: 1em auto; position: relative;}video { display: block; width: 100%;}.modal { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.5); display: flex; justify-content: center; align-items: center; display: none;}.btn { border: none; outline: none; background: #409eff; color: #fff; display: inline-block; line-height: 1; white-space: nowrap; cursor: pointer; text-align: center; transition: 0.1s; font-weight: 500; user-select: none; padding: 12px 20px; font-size: 14px; border-radius: 4px;}.btn:hover { background: #66b1ff;}.btn:active { background: #3a8ee6;}.btn:disabled { background: #66b1ff80; cursor: not-allowed;}。
。
。
。
总结。