Youtube Javascript API:当用户切换“静音”时运行函数

Youtube Javascript API: Run Function When User Toggles "Mute"?

本文关键字:静音 函数 运行 API Javascript 用户 Youtube      更新时间:2023-09-26

我正在使用这个问题中的代码来自动播放嵌入的 iframe Youtube 视频,并为视频启用各种外部控件(例如静音、取消静音(https://stackoverflow.com/a/7988536/262047

当用户切换静音按钮时,有没有办法触发事件?类似于onStateChange的东西?

作为背景,这就是我想要完成的:

  • 我在几个页面上都有视频,每个视频都自动开始播放。每页上有一个视频。
  • 视频开始时静音,然后我有一个按钮可以切换启用/禁用声音。单击该按钮时,它会取消 Youtube 视频的静音并设置一个会话 cookie,告诉任何其他播放器用户已启用声音。
  • 一旦 cookie 设置为启用声音,如果用户转到另一个带有自动播放视频的页面,声音将被打开。同样,如果没有 Cookie,或者 Cookie 设置为静音,则所有自动播放的视频都将开始静音。

我有上述所有工作,但有一个问题:如果有人使用视频播放器内的取消静音按钮,则不会设置 cookie,并且视频将在下一页上再次静音。我希望能够从播放器中捕获取消静音事件,并相应地设置 cookie。

我认为没有任何事件为此触发。我唯一能想到的就是运行一个间隔并使用player.isMuted()检查静音状态。