HTML5 视频背景不在 iPhone 上播放 Safari

Yor*_*nto 6 html mobile-safari html5-video

我有网站原始页面构建器(Wordpress)的视频背景插件,并且我上传了背景视频(MP4 和 WEBM 格式)。文件大小分别约为 35mb 和 17mb。

我已经在几部运行最新 iOS 和 safari 的 iPhone 上进行了测试,视频没有像它应该的那样自动播放(只显示后备图像)。

视频代码:

<video id="so_bgvideo_5df3a8b601042" 
class="so_video_bg jquery-background-video is-playing is-visible" 
loop="" autoplay="" playsinline="" muted="" data-bgvideo="" 
poster="https://mywebsite.com/fallback-image.jpg" 
data-bgvideo-fade-in="500" data-bgvideo-pause-after="120" 
data-bgvideo-show-pause-play="true" 
data-bgvideo-pause-play-x-pos="right"
data-bgvideo-pause-play-y-pos="top" 
style="min-width: auto; min-height:auto; width: 100%; height: auto;
position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
transition-duration: 500ms;">
<source src="https://mywebsite.com/video.mp4" type="video/mp4">
<source src="https://mywebsite.com/video.webm" type="video/webm">
</video>
Run Code Online (Sandbox Code Playgroud)

据我所知,视频包含 Safari 所需的属性(并且在 Safari 桌面上播放良好)。

任何人都可以建议修复以使其在 Safari 移动设备上运行吗?

小智 14

Safari 不允许在这两种情况下自动播放视频

  1. 未设置“静音”配置时
  2. 当 iPhone 处于省电模式或电池电量不足时

要实现自动播放,请在属性和 js 中启用muteautoplay

<video id="BgVideo" muted autoplay>

<script>
var bgvideo = document.getElementById("BgVideo");
bgvideo.muted = true;
bgvideo.play();
</script>
Run Code Online (Sandbox Code Playgroud)


小智 13

只需添加“playsinline”以及静音和自动播放..就是这样..

<video autoplay loop muted playsinline src="..."></video>
Run Code Online (Sandbox Code Playgroud)


Yor*_*nto 1

更新

正如最初的帖子中所述,我正在使用video background for site origins pluginfor Wordpress

尽管该插件最近没有更新,但 GitHub 上提供了更新:https: //github.com/BGStock/jquery-background-video/blob/master/jquery.background-video.js

添加这个新文件/覆盖旧文件解决了 iOS 上的问题。希望这对使用这个特定插件的其他人有所帮助。