YouTube API seekTo在IE9和IE10上只播放声音,不播放图片

YouTube API seekTo plays only sound, no picture on second play on IE9 and IE10

本文关键字:播放声音 播放 seekTo API IE9 IE10 YouTube      更新时间:2023-09-26

我正在为我的客户建立一个网站,他们希望YouTube嵌入视频与外部控制。这是代码

    var player;
    function onYouTubePlayerAPIReady() {
      player = new YT.Player('player', {
        height: '100%',
        width: '100%',
        playerVars: {rel: 0},
        videoId: 'myvideoid',
        events: {
          'onReady': onPlayerReady,
          'onStateChange': onPlayerStateChange
        }
      });
    }
    function onPlayerStateChange(event) {        
        if(event.data === 0) {          
          player.stopVideo();
        }
  $(document).ready(function() {
    $( '.play-btn' ).on( 'click', function() {
      if ($('.video').hasClass('mobile')) {
      }
      else {
        player.seekTo(0, true);
        player.playVideo();
      }
    });

这在现代浏览器上工作得很好,但在IE9上我有一个问题:点击视频开始播放。然而,当视频到达它的结束,我再次按下外部按钮,我得到"错误发生"的消息,只有视频声音开始播放。

你知道是什么原因导致的吗?

编辑

onError事件给出错误代码5,这是,据我所知,HTML5相关。错误也发生在视频的末尾,而不是我最初认为的开始。

删除不必要的stopVideo()函数解决了这个问题。当调用该函数时,视频已经在最后停止,显然这导致了错误。

这解决了IE9和IE10的问题