はじめに
先日、youtube player apiの仕様が変更になり、rel: 0
を指定しても、動画再生後の関連動画を消すことができなくなりました。
rel: 0
の仕様
・今まで:動画終了後、関連動画を消す
・これから:動画終了後、同アカウントの関連動画のみを表示させる
どうしても関連動画を表示させたくなかったので、どうにかならないかと模索して実装したので、その備忘録です。
実装方法
・動画が終了したら、動画を0秒に戻し、停止する
これで、関連動画を消すことができました。
this.player = new YT.Player($player, {
videoId: id,
width: 600,
height: 400,
playerVars: {
rel: 0,
},
events: {
onStateChange: event => {
if (event.data === YT.PlayerState.ENDED) {
this.player.seekTo(0, true);
this.player.stopVideo();
}
}
}
});
終わりに
この方法を使うと、動画終了後に関連動画を表示させずに済みます。
ただ、一時停止したときには関連動画が出てしまう難点もあります。
何かいい方法を知っている方がいらっしゃいましたら、教えていただければと思います。