onReady не вызывается
var player = null;
function LoadYouTubeIframeAPI() {
var scriptElement = document.createElement("script");
scriptElement.src = "http://www.youtube.com/iframe_api";
var firstScriptElement = document.getElementsByTagName("script")[0];
firstScriptElement.parentNode.insertBefore(scriptElement, firstScriptElement);
}
function onYouTubeIframeAPIReady() {
var playerParams = {
playerVars: {
"enablejsapi": 1,
"origin": document.domain,
"rel": 0
},
events: {
"onReady": onPlayerReady,
"onError": onPlayerError,
"onStateChange": onPlayerStateChange
}
};
player = new YT.Player("player", playerParams);
}
function onPlayerReady(event) {
alert("ready")
}
function onPlayerError(event) {}
function onPlayerStateChange(event) {}
Вот мой полный код.
function onPlayerReady(event) {
alert("ready")
}
Никогда не увольняют по какой-то причине. Может кто-нибудь помочь с этим? Я просто не могу заставить его работать часами. Google вообще мне не помогает.
1 ответ
Решение
- Убедитесь, что у вас есть
<div>
Элемент для вашего игрока. - Убедитесь, что функция
LoadYouTubeIframeAPI
на самом деле называется. Потому что в вашем коде это никогда не выполняется. Вы просто определяете это. - Убедитесь, что вы не обращаетесь к своему сайту через HTTPS, так как загрузка HTTP Ressourcs с помощью javascript работает только на сайтах HTTP.
Вот рабочий пример, вы можете просто создать файл с именем test.html
вставьте содержимое на рабочий стол и запустите его с помощью веб-браузера. Вы увидите, что это работает просто отлично.
Здесь вы можете найти API Reference, чтобы увидеть больше деталей.