14

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

4

7 回答 7

25

在 DOM 元素上使用以下 CSS:

.ytplayer {pointer-events: none;}
于 2015-04-07T03:25:25.797 回答
24

您可以尝试在视频上放置一个 div 容器,上面没有任何内容。换句话说,一个与视频本身大小相同的空白容器。这应该做的是当有人试图点击它时,他们实际上会点击它上面的透明容器并且无法暂停。这应该有效。您可能还需要更改 z-index 以确保空白 div 容器真正位于视频上方。(首先使用背景颜色测试 div 容器,如果彩色框覆盖了视频,那么您可以返回并删除颜色,它会起作用。)祝你好运。

此外,将disablekb参数设置为 1,这样用户即使按空格键也无法暂停。

于 2012-11-28T15:41:18.490 回答
10

如果您通过 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>

添加您选择的类名,我选择 ytplayer

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;
}

那应该这样做。

于 2016-04-19T18:44:24.103 回答
5

没有办法完全禁用暂停。

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

于 2012-11-19T21:55:47.763 回答
1

“ ?controls=0 ” 仅在播放器中隐藏底部控制面板,但在单击屏幕时播放/暂停将正常工作

以下是控制参数值:

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

检查这篇文章这真的很有帮助 https://developers.google.com/youtube/player_parameters

于 2012-11-17T16:03:27.037 回答
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);
于 2015-11-13T16:47:06.417 回答
0

这是我的代码解决方案,可以让视频自动播放而不能在桌面上暂停但允许在移动设备上

  <style>
  .overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    /* knock out nasty borders */
    outline: 2px solid white !important;
    outline-offset: -1px;
    pointer-events: none;
  }

  .wrapper-with-intrinsic-ratio {
    position: relative;
    padding-bottom: 56.25%;
  }

  .element-to-stretch iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffff;
  }

  .wrapper-with-intrinsic-ratio .element-to-stretch {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  @media only screen and (max-width: 900px) {
    .noclick {
      display: none;
    }
  }

  .noclick {
    z-index: 2000;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
</style>
<div class="target2">
<div class="noclick"></div>
<div class="wrapper-with-intrinsic-ratio">
<div class="element-to-stretch">
<div class="overlay"><iframe title="YouTube video player" src="https://www.youtube.com/embed/tgbNymZ7vqY?rel=0&amp;autoplay=1&amp;controls=0&amp;disablekb=1&amp;loop=1&amp;playlist=tgbNymZ7vqY&amp;playsinline=1&amp;iv_load_policy=3&amp;mute=1&amp;widgetid=1&amp;widget_referrer" width="100%" height="100%" frameborder="0" allowfullscreen=""></iframe></div>
</div>
</div>
</div>

注意让视频重复播放,而不是自动播放播放列表中的下一个项目 将播放列表设置为视频 id(youtube) 不会在浏览器视频中的移动设备上进行视频推荐

于 2019-07-26T15:43:49.477 回答