YouTube IFRAME API不暂停视频



我当前正在使用带有各种iFrame youtube嵌入的滑块的页面。

当您点击滑块上的"下一个"按钮时,我正在尝试让我的JS暂停视频。我认为我已经根据API设置了所有内容。但是,当您单击"滑块"按钮时,它似乎并没有暂停视频。

<script type="text/javascript">
// https://developers.google.com/youtube/iframe_api_reference
// global variable for the player
var player;
// this function gets called when API is ready to use
function onYouTubePlayerAPIReady() {
  // create the global player from the specific iframe (#video)
  player = new YT.Player('video', {
    events: {
      // call this function when player is ready to use
      'onReady': onPlayerReady
    }
  });
}
function onPlayerReady(event) {
  // bind events
  var pauseButtonRight = document.getElementByID("pause-right");
  pauseButtonRight.addEventListener("click", function() {
    player.pauseVideo();
  });
   var pauseButtonLeft = document.getElementByID("pause-left");
  pauseButtonLeft.addEventListener("click", function() {
    player.pauseVideo();
  });
}
// Inject YouTube API script
var tag = document.createElement('script');
tag.src = "//www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
</script>

我的iframes:

<iframe src="https://www.youtube.com/embed/6QB6jVjA2js?enablejsapi=1&html5=1&" frameborder="0" allowfullscreen="0"></iframe>

任何方向都将不胜感激。

几件事:

  • 这是document.getElementById不是document.getElementByID
  • 您已经使用ID 'video'实现了YouTube播放器,但是您的iFrame没有任何ID:

    <iframe id="video" src="https://www.youtube.com/embed/6QB6jVjA2js?enablejsapi=1&html5=1&" frameborder="0" allowfullscreen="0"></iframe>
    
  • 使用onYouTubeIframeAPIReady代替onYouTubePlayerAPIReady

您将有类似的东西:

var player;
function onYouTubeIframeAPIReady() {
  // create the global player from the specific iframe (#video)
  player = new YT.Player('video', {
    events: {
      // call this function when player is ready to use
      'onReady': onPlayerReady
    }
  });
}
function onPlayerReady(event) {
  var pauseButtonRight = document.getElementById("pause");
  pauseButtonRight.addEventListener("click", function() {
    player.pauseVideo();
  });
  var pauseButtonLeft = document.getElementById("play");
  pauseButtonLeft.addEventListener("click", function() {
    player.playVideo();
  });
}
// Inject YouTube API script
var tag = document.createElement('script');
tag.src = "//www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

with:

<iframe id="video" src="https://www.youtube.com/embed/6QB6jVjA2js?enablejsapi=1&html5=1&" frameborder="0" allowfullscreen="0"></iframe>
<input id="pause" type="submit" value="pause" />
<input id="play" type="submit" value="play" />

检查此小提琴

检查youtube iframe api参考

相关内容

  • 没有找到相关文章

最新更新