【问题标题】:Javascript doesnt reload the page when tabbed out/ reloads only when on same tabJavascript不会在标签页中重新加载页面/仅在同一标签页上重新加载
【发布时间】:2018-02-25 01:06:43
【问题描述】:

我使用 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);
  }
}

【问题讨论】:

    标签: javascript php jquery html google-chrome


    【解决方案1】:

    嗯,这显然不是浏览器的错。当窗口没有聚焦时,浏览器会重新加载页面。更像是这个 YT.Player 在窗口没有聚焦时不会触发 onPlayerStateChange 事件。 不仅如此,如果您注意到,如果选项卡没有聚焦,YT.Player 甚至不会启动视频。 我想不出没有修补 YT 库就可以绕过它的方法。

    【讨论】:

    • 你是说我需要使用自定义开源播放器来播放 YT 链接吗?你能给我推荐一个吗?不过我很感谢你的回答!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-24
    • 2013-02-23
    • 2013-12-22
    • 2013-07-17
    • 1970-01-01
    • 2017-04-09
    相关资源
    最近更新 更多