Jquery HTML5视频全屏无法在iPad上运行

Jquery HTML5视频全屏无法在iPad上运行,jquery,ipad,html,video,fullscreen,Jquery,Ipad,Html,Video,Fullscreen,我有一个html5视频流。我使用自定义控件,并使用jQuery将操作绑定到它们。其中一个控件是全屏按钮,它调用video.webkitEnterFullScreen()。当我在Safari中测试时,全屏效果很好。当我在iPad上尝试时,它失败了。有什么好处 以下是我如何用html声明我的视频: <video preload="true" width="720" height="405"></video> 这同样适用于safari,但不适用于ipad。当在功能声明中包含警

我有一个html5视频流。我使用自定义控件,并使用jQuery将操作绑定到它们。其中一个控件是全屏按钮,它调用video.webkitEnterFullScreen()。当我在Safari中测试时,全屏效果很好。当我在iPad上尝试时,它失败了。有什么好处

以下是我如何用html声明我的视频:

<video preload="true" width="720" height="405"></video>
这同样适用于safari,但不适用于ipad。当在功能声明中包含警报和日志语句时,它们会出现,这意味着我的点击确实在ipad上注册,但视频不会进入全屏模式。救命啊


更新:为了澄清我的问题,我在播放方面没有问题。该视频在safari桌面和safari for ipad中播放。在safari桌面版上,全屏功能正常,但在safari ipad版上,全屏功能不正常。

有一件事,虽然我不确定这是否重要,但
preload=“true”
不再有效<代码>预加载可以设置为以下选项之一:
元数据
自动
(这可能就是此处设置的内容)

也许iPad的默认设置是不预加载任何内容,所以也许可以尝试将其设置为元数据


也请签出。

因此,经过艰苦乏味的调试,我发现了问题的原因。我检查了所有可以被玩家继承的css规则,并对它们进行了切换(将它们注释掉,然后重新输入),看看会产生什么效果。我终于找到了罪犯。我的视频所在的div最初有一个css类,它有一个规则“可见性:隐藏”。当用户按下页面上的按钮时,jQuery将触发一个命令,将此规则从“隐藏”更改为“可见”。从最初的css类中删除“可见性:隐藏”规则可以让我在ipad上全屏显示。现在我可以在ipad上全屏显示,但我的项目设计不起作用,但这是另一篇文章的问题。我希望这能帮助其他类似情况的人。

坏消息对不起。。。到目前为止,iPad还不支持WebKitenerFullScreen。好消息是这里已经起草了规范:


我们需要再多等一点,才能让这一切发生

苹果最近(2019年初)将iPadOS从iOS中分离出来,他们早在去年秋天(2018年)就在iPadSafari上推出了对全屏api的支持

您现在可以在iPadOS Safari上支持全屏web应用程序。下面的共享是一个仅适用于跨浏览器和iPadOS 12.x+Safari的解决方案,以及必需的代码:


披露:我已经在上述链接上写了博客。请注意,iPadOS上的Chrome仍然不支持全屏api,但它只会从这里变得更好。

这不起作用。我试着完全从视频标签上进行匹配,结果是一样的。我要澄清的是,我在全屏播放方面没有问题。是的,你在全屏播放时不会有问题,我只是想知道当你尝试全屏播放时,视频元数据是否还没有加载,显然iPad在is有元数据之前是不会允许的。
<a href="javascript:;" class="fullscreen">
     <span class="icon"></span>
</a>
var video = $('video')[0];
$('body').find('.fullscreen').click(function(){
     video.webkitEnterFullscreen();
});

$('body').find('.fullscreen .icon').click(function(){
     video.webkitEnterFullscreen();
});