首页 > 解决方案 > 在滚动铬上请求画中画

问题描述

当视频超出视口时,我想通过滚动事件侦听器使用 chrome 的 PIP。Chrome 给出了这个错误:

必须处理用户手势来请求画中画。

有人可以确认滚动是否是用户手势吗?如果是为什么会出现这个错误?

标签: javascriptpicture-in-picture

解决方案


以下是规范定义的“通过用户激活”触发的事件列表:

  • 改变
  • 点击
  • 上下文菜单
  • dblclick
  • mouseup
  • 指针向上
  • 重置
  • 提交
  • 触摸端

滚动不存在,并且由于请求画中画算法的步骤.6明确要求

如果算法不是由用户激活触发的,则抛出NotAllowedError并中止这些步骤。

您将无法通过此事件请求 PiP。


在你的位置上,我会重新考虑是否需要 PiP 并检查固定位置的 <video> 是否不能代替。


推荐阅读