2012-11-17 115 views
8

我需要在我的网页上播放视频。但我需要否认控制。 我把“controls = 0”,但是当我点击它时,播放器会暂停动作。 我可以在YouTube播放器中禁用“暂停”操作吗?Youtube Iframe禁用暂停视频

+0

好问题,api真的很差(我在2年后发布) – sports

回答

2

有没有方法来禁用完全暂停。

您可以在onStateChange处理程序中侦听YT.PlayerState.PAUSED事件,并在检测到某个事件时立即调用playVideo(),但是......我不知道这听起来像是不会非常用户友好。

+0

是的。这不是用户友好的,但它不是我的愿望。 无论如何,谢谢。 –

1

“?控制= 0”只隐藏在播放器底部的控制面板,但同时在屏幕上播放点击/暂停将恢复正常

这里的控制参数值:

  • 控制= 0 - 播放器控件不显示在播放器中。对于AS3 播放器,Flash播放器会立即加载。
  • controls = 1 - 播放器中的播放器控件显示。对于AS3播放器, Flash播放器立即加载。
  • controls = 2 - 播放器控件显示在播放器中。对于AS3播放器, Flash播放器加载用户启动视频播放。

检查这篇文章这是真正有用的 https://developers.google.com/youtube/player_parameters

22

您可以尝试在视频上放一个div容器,而不需要任何东西。换句话说,一个与视频本身尺寸相同的空白容器。这个应该做的是,当有人试图点击它时,他们实际上会点击它上面的透明容器,并且无法暂停。这应该工作。您可能还需要更改z-index以确保空白div容器真正在视频上。 (首先测试div容器的背景颜色,如果彩色框覆盖视频,则可以返回并移除颜色,并且它会起作用。)祝您好运。

另外,将disablekb参数设置为1,以便用户不能通过空格键暂停。

+2

使用指针事件将播放器包装在容器中:无; – donleche

+3

这是否违反了YouTube的服务条款? – JAL

10

使用以下命令:

ytplayer {pointer-events: none;} 
+0

对我来说,它适用于:'iframe {pointer-events:none;}' –

0

这里是阻止屏幕,使用户无法点击任何东西的方式。

// block screen so user cant click 
var blockDiv = $(document.createElement('div')) 
     .attr('id', 'blockDiv') 
     .height('100%').width('100%') 
     .css({'z-index':'3333', 'position' : 'absolute', 'top': '0', 'left':'0'}); 
$('body').append(blockDiv); 
4

如果您通过HTML显示视频,并且可以访问用于显示视频的CSS类,则可以执行以下操作。

你的HTML会是这个样子:

<iframe id="ytplayer" type="text/html" width="720" height="405" 
src="https://www.youtube.com/watch?v=z4O-5eV4LiA" 
frameborder="0" allowfullscreen> 

添加你所选择的类名,我选择YouTube播放

class="ytplayer" 

它看起来像我的例子如下

<iframe class="ytplayer" id="ytplayer" type="text/html" width="720" height="405" 
src="https://www.youtube.com/watch?v=z4O-5eV4LiA" 
frameborder="0" allowfullscreen> 

然后在你的CSS文件中添加修改你的类的规则。我使用了ytplayer,但是你可以选择一个不同的类名,确保它与你在上面使用的名称相匹配。

.ytplayer { 
pointer-events: none; 
position: absolute; 
} 

应该这样做。