我的网站中的视频元素的工作代码在ios 9/10和所有普通浏览器(chrome / ff / ie)等上完全正常运行。
我注意到,因为ios 11更新视频不再播放甚至根本不工作。它们显示为带控件的空白框,但是按下播放什么都不做,打开全屏视频什么都不做。
这是我相对简单的代码
<video playsinline onclick="play()" controls autoplay
controlsList="nodownload">
<source src="assets/images/video_im.mp4" type="video/mp4">
</video>
我尝试过使用playsinline =“true”和controls =“true”的不同变体。它们没有效果。
我试图谷歌这个问题,但除了播客关于ios 11删除html5视频支持之外似乎什么都没有,肯定有修复?
非常感谢任何见解/帮助。
干杯
答案 0 :(得分:1)
看起来像以下代码:
<video>
<source src="path/to/video.mp4">
</video>
停止使用ios11(还有许多其他功能......)。我确认source
标签在这里对ios9有效。尝试直接将src="path/to/video.mp4"
放入video
标记,它应该适用于ios11。
取自webkit.org post on New video Policies for iOS的工作示例:
<div id="either-gif-or-video">
<video src="image.mp4" autoplay loop muted playsinline></video>
<img src="image.gif">
</div>
MacOS上的Safari似乎也有类似的问题,也许在那里测试更容易。看起来我们丢失了多源功能:(
答案 1 :(得分:0)
我也遇到了类似的问题,即视频无法在Safari上播放。问题是我的网络服务器。我将视频移到了另一台托管服务器上,然后从那里加载了它,并且可以正常工作。
例如
代替:
<video src='/myVideo.mp4' controls> </video>
做这样的事情:
<video src='https://anotherServer.com/myVideo.mp4' controls> </video>