onReady 未被调用

onReady not being called

    var player = null;

function LoadYouTubeIframeAPI() {
  var scriptElement = document.createElement("script");
  scriptElement.src = "http://www.youtube.com/iframe_api";
  var firstScriptElement = document.getElementsByTagName("script")[0];
  firstScriptElement.parentNode.insertBefore(scriptElement, firstScriptElement);
}

function onYouTubeIframeAPIReady() {
  var playerParams = {
    playerVars: {
      "enablejsapi": 1,
      "origin": document.domain,
      "rel": 0
    },
    events: {
      "onReady": onPlayerReady,
      "onError": onPlayerError,
      "onStateChange": onPlayerStateChange
    }
  };
  player = new YT.Player("player", playerParams);
}

function onPlayerReady(event) {
  alert("ready")
}

function onPlayerError(event) {}

function onPlayerStateChange(event) {}

这是我的完整代码。

function onPlayerReady(event) {
    alert("ready")
}

从未因为某种原因被解雇。有人能帮忙吗?我几个小时都无法让它工作。Google 对我一点帮助都没有。

  1. 确保您的播放器有一个 <div> 元素。
  2. 确保确实调用了函数 LoadYouTubeIframeAPI。因为在您的代码中它永远不会被执行。你只是在定义它。
  3. 确保您没有通过 HTTPS 访问您的站点,因为使用 javascript 加载 HTTP 资源仅适用于 HTTP 站点。

Here 是一个工作示例,您可以在桌面上创建一个名为 test.html 的文件,将内容粘贴到其中,然后使用网络浏览器 运行。你会看到它工作得很好。

Here 您可以找到 API 参考以查看更多详细信息。