7

我正在尝试使用 YouTube API 来检测视频何时结束,然后调用一个 JS 函数,然后我必须加载另一个。调用函数位于我的 HTML 文档头部的另一个 JS 文档中。这是到目前为止我从 API 站点获得的代码,但我真的很困惑。

<pre><code> <script>




var ytfullplayer;
    function onYouTubePlayerAPIReady() {
        console.log('onYouTubePlayerAPIReady');
        ytfullplayer = new YT.Player('myVid', {
            events: {

              if ''onStateChange': getVideo

            }
        });

    }
    function getVideo(); }


</script> </code> </pre>

我已经在我的页面顶部调用了 youtube api。但我不是 100% 确定它是否会去那里。任何帮助都会很好。我正在为我的 youtube 视频使用一个。

干杯马特

4

1 回答 1

12

API 提供了您在订阅事件下尝试的示例:

function onYouTubePlayerReady(playerId) {
  ytplayer = document.getElementById("myytplayer");
  ytplayer.addEventListener("onStateChange", "onytplayerStateChange");
}

function onytplayerStateChange(newState) {
   alert("Player's new state: " + newState);
}

将您的自定义函数作为处理程序绑定到“onStateChange”事件,并从内部评估新状态。根据 API 的 Events 部分,您正在寻找 state 0,表示视频已结束。

function onytplayerStateChange(newState) {
   if ( newState == 0 ) {
     /* load next video */
  }
}
于 2012-05-05T06:57:55.723 回答