【问题标题】:HTML5 video tag on IOS 11IOS 11 上的 HTML5 视频标签
【发布时间】:2018-04-23 14:37:21
【问题描述】:

我的网站中有一个视频元素的工作代码,它在 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>  

我尝试了使用 playinline="true" 和 controls="true" 的不同变体。它们没有任何作用。

我试图用谷歌搜索这个问题,但似乎除了一个播客外,没有任何内容,关于 ios 11 删除 html5 视频支持,肯定有解决办法吗?

任何见解/帮助将不胜感激。

干杯

【问题讨论】:

    标签: html video html5-video ios11


    【解决方案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 似乎也有类似的问题,也许在那里测试更容易。看起来我们失去了 多源 功能 :(

    【讨论】:

    • 您尝试过其他视频格式吗?我实际上正在使用m4v
    【解决方案2】:

    我遇到了类似的视频无法在 Safari 上播放的问题。问题是我的网络服务器。我将视频移到另一个托管服务器,从那里加载它并且它工作。

    例如

    代替:

    <video src='/myVideo.mp4' controls> </video>
    

    做这样的事情:

    <video src='https://anotherServer.com/myVideo.mp4' controls> </video>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-18
      • 2016-11-21
      • 2011-07-11
      • 2012-08-01
      相关资源
      最近更新 更多