Youtube api 我有一个YouTube视频,当它结束时,我想重定向到我网站上的另一个页面

Youtube api 我有一个YouTube视频,当它结束时,我想重定向到我网站上的另一个页面,youtube-api,Youtube Api,我的视频播放正确,这里有几个问题的答案,但我一辈子都不知道在我下面的工作代码中添加任何解决方案 <div id="ytplayer"></div> <script> // Load the IFrame Player API code asynchronously. var tag = document.createElement('script'); tag.src = "https://www.youtube.com/player_a

我的视频播放正确,这里有几个问题的答案,但我一辈子都不知道在我下面的工作代码中添加任何解决方案

    <div id="ytplayer"></div>

<script>
  // Load the IFrame Player API code asynchronously.
  var tag = document.createElement('script');
  tag.src = "https://www.youtube.com/player_api";
  var firstScriptTag = document.getElementsByTagName('script')[0];
  firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

  // Replace the 'ytplayer' element with an <iframe> and
  // YouTube player after the API code downloads.
  var player;
  function onYouTubePlayerAPIReady() {
    player = new YT.Player('ytplayer', {
      height: '700',
      width: '1600',
      videoId: 'MyVideo',
      playerVars: { 'autoplay': 1, 'controls': 0,'modestbranding': 1, 'rel': 0 }
    });
  }

</script>

//异步加载IFrame播放器API代码。
var tag=document.createElement('script');
tag.src=”https://www.youtube.com/player_api";
var firstScriptTag=document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(标记,firstScriptTag);
//用and替换“ytplayer”元素
//YouTube播放器的API代码下载后。
var播放器;
函数onYouTubePlayerAPIReady(){
player=新的YT.player('ytplayer'{
高度:'700',
宽度:'1600',
videoId:“我的视频”,
playerBars:{'autoplay':1,'controls':0,'autoplay':1,'rel':0}
});
}

当然会感谢任何帮助

您可以使用players
onStateChange
事件调用自己的函数

比如说

function VideoEnd(state){
if(state.data === 0){
 window.location="https://jsfiddle.net";
  }
}
function onYouTubePlayerAPIReady() {
  player = new YT.Player('ytplayer', {
   height: '300',
   width: '400',
   videoId: 'kvKLpJbIfn4',
   playerVars: { 'autoplay': 1, 'controls': 0,'modestbranding': 1, 'rel': 0 },
     events:{
       'onStateChange': VideoEnd
     }
 });
}
这是一个

如果您有任何问题,请在下面留言,我会尽快回复您


我希望这有帮助。快乐编码

您可以使用players
onStateChange
事件调用自己的函数

比如说

function VideoEnd(state){
if(state.data === 0){
 window.location="https://jsfiddle.net";
  }
}
function onYouTubePlayerAPIReady() {
  player = new YT.Player('ytplayer', {
   height: '300',
   width: '400',
   videoId: 'kvKLpJbIfn4',
   playerVars: { 'autoplay': 1, 'controls': 0,'modestbranding': 1, 'rel': 0 },
     events:{
       'onStateChange': VideoEnd
     }
 });
}
这是一个

如果您有任何问题,请在下面留言,我会尽快回复您


我希望这有帮助。快乐编码

好的,我从JS Fiddle站点获取了原样的代码,它与您的目标运行良好。我将我的目标window.location和videoID分为子窗口,视频可以正常播放,但只停留在我的视频缩略图上,而不是重定向。谢谢你帮助我!您是否将
onStateChange
事件属性添加到播放器中?请检查您的浏览器控制台是否有任何错误。我相信是这样,因为我复制了建议的工作代码,只是编辑了视频和重定向页面目标。请检查您的浏览器控制台是否有错误。还要注释掉redriection并放置一个
console.log('video end')在那里测试是否执行了事件、函数。好的,我从JS Fiddle站点获取了原样的代码,它与您的目标运行良好。我将我的目标window.location和videoID分为子窗口,视频可以正常播放,但只停留在我的视频缩略图上,而不是重定向。谢谢你帮助我!您是否将
onStateChange
事件属性添加到播放器中?请检查您的浏览器控制台是否有任何错误。我相信是这样,因为我复制了建议的工作代码,只是编辑了视频和重定向页面目标。请检查您的浏览器控制台是否有错误。还要注释掉redriection并放置一个
console.log('video end')用于测试事件、函数是否执行过。