Skip to content

如何禁止 iPhone Safari video 标签视频自动全屏?

最近做一个移动端微信页面项目,在微信页面中有视频播放,但是需要禁止 IOS 的自动全屏播放(前提必须使用 video 标签)。

html
<video id="post" autoplay loop preload="auto">
  <source src="http://segmentfault.com/a/foo.mp4" type="video/mp4" />
</video>
<video id="post" autoplay loop preload="auto">
  <source src="http://segmentfault.com/a/foo.mp4" type="video/mp4" />
</video>

在 iPhone safari 点击视频会弹出播放器进行全屏播放。

在网上看了看别人给出的答案,引用如下:

可以在 video 标签上加一个 webkit-playsinline 属性 ,如下:

html
<video id="video" width="280" height="140" webkit-playsinline></video>
<video id="video" width="280" height="140" webkit-playsinline></video>

我想说这能解决问题吗? 答案当然是不能。。。。

当然在 iOS APP 中使用网页视频,是可以禁止全屏播放的,方法如下:

前端将 video 标签加入属性 webkit-playsinline,如:<video id="player" width="480" height="320" webkit-playsinline>Obj-C 中,添加配置:webview.allowsInlineMediaPlayback = YES;

还有网友这样回答答案:

把视频转码,用 ajax 去分段请求数据来填充到 canvas。

当然如果确实需要退出全屏,可以使用这样的方法,但是毕竟这样没什么必要。

最后编辑时间:

Version 4.0 (framework-1.0.0-rc.20)