2016-08-05 7 views
0

Я пытаюсь загрузить YouTube в мой веб-страницы с помощью YouTube iFrame Player API и получать следующее сообщение об ошибке при загрузке:API проигрывателя YouTube IFrame не удалось выполнить PostMessage на DOMWindow

Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('https://www.youtube.com') does not match the recipient window's origin ('https://developer-sandbox.com'). 

как происхождение и цель являются https, там несколько SO сообщение, которое решает проблему, сохраняя исходный код & целевой URL-адрес https. В этом случае оба они одинаковы.

Ниже приводится код JS Я использовал, чтобы загрузить проигрыватель динамически:

showVideoPreview: function(youtube_id){ 
     var meThis = this; 
     var player = new YT.Player('shoppable-video-container', { 
      height : '315', 
      width : '560', 
      videoId : youtube_id, 
      events : { 
       'onReady'  : meThis.onPlayerReady, 
       'onStateChange' : meThis.onPlayerStateChange 
      } 
     }); 
    } 

youtube iframe api video loading error view

+0

В моем случае это происходит потому, что Jquery была нагрузка в 'секции' . Переместите его в раздел '' ниже, но перед '' отлично работает. – vee

ответ

0

Попробуйте использовать loadVideoById

Эта функция загружает и воспроизводит указанный видео.

  • Обязательный параметр videoId указывает YouTube Video идентификатор видео для воспроизведения. В API данных YouTube присвоено значение video ресурса: id.
  • Необязательный параметр startSeconds принимает значение float/integer. Если это указано, видео начнется с ближайшего ключевого кадра до указанного времени.
  • Необязательный параметр endSeconds принимает значение float/integer. Если это указано, видео перестанет воспроизводиться в указанное время.
  • Необязательный параметр suggestedQuality указывает рекомендуемое качество воспроизведения видео. Для получения дополнительной информации о качестве воспроизведения см. Определение функции setPlaybackQuality.

Вот фрагмент, чтобы помочь вам

JS

function searchVideo(){ 
var vID = document.getElementById("vidID").value 
player.loadVideoById(vID, 0, "default"); 

} 

HTML

Search by Video ID: <input type="text" id="vidID" name="vidID"><button onclick="searchVideo()">Search</button> 
Смежные вопросы