如何访问连接到 IFrame 的现有 YouTube 播放器?



假设已经从另一个javascript模块youtube.js定义了一个播放器对象,如下所示:

  var player;
  function onYouTubeIframeAPIReady() {
    player = new YT.Player('initial-video', {
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange
      }
    });
  }

如何从some_other_js_file.js访问此player以便加载另一个视频?是否可以在some_other_js_file.js中定义一个指向同一玩家对象的新变量?如果不是,有什么可能的解决方法?

假设player是在iframe中定义的,则可以使用其contentwindow属性从父页面访问它。iFrame中的所有全局变量都可以从contentWindow 访问

来自some_other_js_file.js

  youtubeiFrame = document.getElementById('youtube-frame-id').contentWindow;
  alert(youtubeiFrame.player)

这和你的情况相符吗?

编辑这个答案似乎是为了解决从父iframe访问youtube播放器的问题,使用jsFiddle示例

相关内容

  • 没有找到相关文章

最新更新