Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 你能在视频完成时全屏退出youtube视频吗_Javascript_Video_Youtube_Html5 Video - Fatal编程技术网

Javascript 你能在视频完成时全屏退出youtube视频吗

Javascript 你能在视频完成时全屏退出youtube视频吗,javascript,video,youtube,html5-video,Javascript,Video,Youtube,Html5 Video,对于youtube视频,Flash和HTML5版本都有一个退出全屏的按钮。是否有一种方法可以使用Javascript以编程方式在视频完成时退出全屏?所以基本上一旦视频结束,我希望它退出全屏模式 简而言之,答案是否定的。目前,没有办法通过编程100%安全地退出Youtube player,但有一个100%安全的解决办法 基本上,您需要做的是遵循一系列简单的步骤,它将在所有浏览器中正常工作: 第1步:把你的Youtube代码放在一个不可见的DIV中,比如说它被称为“代码持有者” 第二步:把一个可见的

对于youtube视频,Flash和HTML5版本都有一个退出全屏的按钮。是否有一种方法可以使用Javascript以编程方式在视频完成时退出全屏?所以基本上一旦视频结束,我希望它退出全屏模式

简而言之,答案是否定的。目前,没有办法通过编程100%安全地退出Youtube player,但有一个100%安全的解决办法

基本上,您需要做的是遵循一系列简单的步骤,它将在所有浏览器中正常工作:

第1步:把你的Youtube代码放在一个不可见的DIV中,比如说它被称为“代码持有者”

第二步:把一个可见的DIV作为不可见DIV的持有者。这就是代码将要用到的地方,比如说它被称为“ytPlayer”

步骤3:加载页面时,将不可见DIV复制到可见DIV中。例如,可以按如下方式执行此操作:

document.getElementById('ytPlayer').innerHTML = document.getElementById('codeholder').innerHTML;
步骤4:我假设您使用的是Youtube API,因此,当触发
Youtube.PlayerState.ENDED
事件时(或在您需要时),将不可见的DIV复制到可见的DIV中。这将强制浏览器关闭播放器以全屏关闭,并显示原始播放器

我喜欢在YouTube.PlayerState.ENDED事件上这样做,因为这是关闭播放器的一种破坏性方式,因此,视频在“退出”全屏后将无法继续播放


然而,Youtube API允许您“读取”播放位置,并且您可以通过一些简单的编码轻松恢复播放位置。不过会有几分之一秒的停顿。

您需要的是以下内容:
document.exitFullscreen()


在这里,您可以阅读有关

嵌入视频将使用什么库/框架的更多信息?给我们更多的细节。我建议我只是使用youtube API。我在youtube api文档中没有看到这样做的方法。我认为这在发布的时候是不可能的。这里有一个演示,类似但相同的想法:,处理全局范围和其他事情。查看这篇stackoverflow帖子。这绝对是最简单的方法。谢谢工作得很好。