确定Chrome是否阻止了HTML5视频自动播放

Determine if Chrome has blocked HTML5 video autoplay?

本文关键字:HTML5 视频 自动播放 Chrome 是否 确定      更新时间:2023-09-26

从Chrome 46开始,新的背景选项卡将不再自动播放音频或视频。应用程序如何判断其自动播放是否被阻止?

一些想法:

  • UA嗅探Chrome 46+
  • 使用可见性API检查选项卡是否可见
  • 使用历史API检查新选项卡
  • 检查视频是否真的在播放

像这样的技巧可能会奏效,但我真的很想知道是否有更好的方法:

function isAutoplayBlocked() {
  return isChrome46 && isNewTab && isHiddenTab;
}

首先在移动设备上,自动播放被完全阻止。

查看视频是否被阻止的最佳方法是查找指示元素已开始播放的媒体事件,如ontimeupdate,并且元素已附加自动播放属性。如果没有更新,也没有用户交互,那么您可以假设自动播放已经暂停。