YouTube框架API出现问题。

我的视频的ID为z1gTBVs6zsw。我正在使用默认的Youtube示例代码(here),结果是(here)。

// 2. This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

// 3. This function creates an <iframe> (and YouTube player)
//    after the API code downloads.
var player;
function onYouTubeIframeAPIReady() {
  player = new YT.Player('player', {
    height: '390',
    width: '640',
    videoId: 'z1gTBVs6zsw',
    events: {
      'onReady': onPlayerReady,
      'onStateChange': onPlayerStateChange
    }
  });
}

// 4. The API will call this function when the video player is ready.
function onPlayerReady(event) {
  event.target.playVideo();
}

// 5. The API calls this function when the player's state changes.
//    The function indicates that when playing a video (state=1),
var done = false;
function onPlayerStateChange(event) {
  if (event.data == YT.PlayerState.PLAYING && !done) {
    done = true;
  }
}
function stopVideo() {
  player.stopVideo();
}

问题是视频在IE10 / 9/8和Chrome中的播放时间为4秒。在Firefox中可以。我不知道问题出在哪里。

最佳答案

试试这个:

  • 从onYouTubeIframeAPIReady()上删除videoId:“z1gTBVs6zsw”
  • 将onPlayerReady()替换为:
    function onPlayerReady(event) {
        player.loadVideoById("z1gTBVs6zsw");
    }
    
  • 关于api - YouTube框架API-视频从一开始就无法播放(IE + Chrome问题),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17260625/

    10-12 00:14
    查看更多