隐藏相关视频Youtube Iframe API

时间:2019-01-25 10:24:55

标签: javascript youtube-iframe-api

我正在尝试隐藏相关视频,这些视频在您暂停视频时显示,但是从类似的问题中我发现,截至 2018年9月25日禁止显示与相关的视频

  

更改的效果是您将无法禁用   有关的影片。但是,您可以选择指定   播放器中显示的相关视频应来自同一频道   作为刚刚播放的视频。

     

更具体地说:

     

在更改之前,如果参数的值设置为0,则   播放器不显示相关视频。更改后,如果相对   参数设置为0,则播放器将显示与   来自与刚刚播放的视频相同的频道。

这里是JSFiddle

参数showinfo=0也不再起作用,该参数用于隐藏视频标题,稍后观看按钮和共享按钮。自到2018年9月25日起已弃用,但是KhanAcademy仍然可以隐藏包含相关视频的内容。他们使用其他API吗?

像Khan Academy一样完全隐藏相关视频,或在顶部叠加缩略图以隐藏相关视频对我来说都是有效的。

2 个答案:

答案 0 :(得分:6)

因此,我找到了一个开源播放器,该播放器确实隐藏了所有相关视频,包括标题,共享和稍后观看按钮。

玩家名称为Plyr

HTML:

<div class="plyr__video-embed" id="player">
    <iframe src="https://www.youtube.com/embed/9C1leq--_wM??origin=https://plyr.io&amp;iv_load_policy=3&amp;modestbranding=1&amp;playsinline=1&amp;showinfo=0&amp;rel=0&amp;enablejsapi=1" allowfullscreen allowtransparency allow="autoplay"></iframe>
</div>

您可以使用以下方式对其进行初始化:

const player = new Plyr('#player', {});

// Expose player so it can be used from the console
window.player = player;

CSS隐藏相关视频:

.plyr__video-embed iframe {
    top: -50%;
    height: 200%;
}

这里是JSFiddle。对我来说很完美。

答案 1 :(得分:0)

从2018年9月25日起,YouTube更改了其API。因此,您不能禁用相关视频,但可以指定可以显示的列表。 https://developers.google.com/youtube/player_parameters#rel

我已经尝试了下面提供的所有可能的答案。您可以在此处尝试以下代码:https://jsfiddle.net/ibrth/0zx7o6rs/62/https://jsfiddle.net/ibrth/z9tk1q3r/

function onYouTubeIframeAPIReady() {
    player = new YT.Player('video-placeholder', {
        width: 600,
        height: 400,
        videoId: '0sDg2h3M1RE',
        playerVars: {
            color: 'white',
            playlist: 'taJ60kskkns,FG0fTKAqZ5g',
            rel:0,
            enablejsapi:1,
            modestbranding: 1, showinfo: 0, ecver: 2
        },
        events: {
            onReady: initialize
        }
    });
}

我在这里找到了答案:

Youtube Javascript API - disable related videos
https://webmasters.stackexchange.com/questions/102974/how-to-remove-the-related-videos-at-end-of-youtube-embedded-video