只有在同一个标​​签

时间:2017-09-15 19:29:08

标签: javascript php jquery html5 google-chrome

我使用javascript / Youtube API + PHP编写了一个代码,它从mysql服务器获取YT视频ID并放在javascript中。我注意到重新加载仅在我处于当前选项卡时发生,而不是在我被选中时。它有点混乱 有一个自己的网站,我可以将库放入MYSQL并从那里播放它的整个想法。任何帮助将不胜感激。

<div id="player"></div>
<script src="http://www.youtube.com/player_api"></script>
var player;

function onYouTubePlayerAPIReady() {
  player = new YT.Player '."('
  player ', {
  height: '100%',
    width: '100%',
    videoId: 'VyMznzLTIi8',
    events: {
      'onReady': onPlayerReady,
      'onStateChange': onPlayerStateChange
    }
});
}

// autoplay video
function onPlayerReady(event) {
  event.target.playVideo();
}

// when video ends
function onPlayerStateChange(event) {
  if (event.data === 0) {
    location.reload(true);
  }
}

1 个答案:

答案 0 :(得分:0)

嗯,显然不是浏览器故障。当窗口没有聚焦时,浏览器会重新加载页面。更有甚者,当窗口没有聚焦时,这个YT.Player不会触发onPlayerStateChange事件。 更重要的是,如果您注意到,如果标签没有聚焦,YT.Player甚至不会启动视频。 如果不修补YT库,我无法想象一种绕过它的方法。