Chrome 浏览网页时最让人头疼的问题之一就是——突然从页面某个角落传来音频或视频的声音,而你根本找不到它来自哪里。
现在,微软正在推动一项新的浏览器权限策略,减少这种“突兀”的体验。这项提案名为 “media-playback-while-not-visible”,目标是防止隐藏的 iframe 中的媒体在用户不知情的情况下自动播放。
为什么会出现“看不见的声音”?
目前,现代浏览器虽然支持静音自动播放,但这一机制在某些场景下并不奏效。例如:
- 开发者常通过将 iframe 的
display
属性设置为none
来隐藏元素 - 这样做可以改善页面布局和交互体验
- 但如果该 iframe 中嵌入了音频或视频,即使不可见,仍可能在后台开始播放
这类问题在电商网站、弹窗广告等场景中尤为常见。用户可能正专注于当前页面内容,却被突如其来的声音打断,严重影响浏览体验。
现有解决方案有哪些不足?
过去,开发者尝试通过卸载并重新加载 iframe 来避免隐藏内容播放音视频,但这带来了明显的性能损耗和用户体验问题:
- 页面切换卡顿
- 媒体重新加载导致延迟
- 用户操作流程被打断
这些方法虽能缓解问题,却并非长久之计。
微软的新提案:让浏览器主动控制隐藏媒体
微软提出的新权限策略,希望借助浏览器本身来管理不可见 iframe 中的媒体播放行为:
- 当 iframe 不可见时,浏览器自动暂停其中的媒体播放
- 当 iframe 被重新显示时,恢复之前的播放状态
这不仅提升了用户体验,还减少了不必要的资源消耗,提高了页面性能。
这项策略如何启用?
该策略目前并未默认开启,而是作为一个可选的权限策略(Permissions Policy),需要开发者主动声明支持。具体使用方式如下:
<iframe src="video.html" allow="media-playback-while-not-visible">
一旦被广泛采用,这项策略将帮助开发者构建更友好、更可控的网页体验。
影响范围:不止于 Chrome
由于该策略基于 Chromium 实现,因此它将适用于所有基于 Chromium 的浏览器,包括:
- Google Chrome
- Microsoft Edge
- Opera
- Brave
- ……
目前,这项功能仍在实验阶段,尚未全面上线。我们还需等待一段时间,才能真正感受到它的实际效果。
微软持续优化浏览器体验
值得一提的是,这只是微软近期推动浏览器改进的众多项目之一。此前,他们还提出了:
- 改善 Chrome 在 HDR 显示器上的色彩表现
- 优化游戏手柄在浏览器中的操作体验
这些努力表明,微软正积极提升 Web 平台的整体用户体验,而不仅仅局限于自家产品。
评论