Tworzę odtwarzacz youtube osadzony za pomocą apletu YT, ale wciąż otrzymuję alert, że zmienna YT nie jest zdefiniowana. Widzę, że skrypt do youtube API jest dołączany, co ma stworzyć zmienną YT - dlaczego więc to nie działa? Działa w innym miejscu mojej witryny.javascript/youtube api - zmienna YT nie jest zdefiniowana
Oto link:
http://oncreativity.tv/site/single/4/7CtQaTmEuWk
i mój kod:
<script>
$(document).ready(function() {
var tag = document.createElement('script');
tag.src = "http://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
var videoSupport = Modernizr.video;
var ua = navigator.userAgent.toLowerCase();
var vid = {};
var params = { allowScriptAccess: "always" };
var atts = { id: "video_player_flash" };
{exp:channel:entries channel="creators" dynamic="off" entry_id="{segment_3}" sort="asc" limit="1"}
vid.description = "{creator_description}";
vid.videoID = '{segment_4}';
vid.link = encodeURI("{creator_link}");
vid.title = "{title}";
vid.photos = [];
{creator_work}
vid.photos[{row_index}] = {};
vid.photos[{row_index}].url = "{work_img}";
vid.photos[{row_index}].title = "{work_title}";
{/creator_work}
{/exp:channel:entries}
var $vidContainerRef = $('#video_player_container');
var $vidPlayer = $('<div id="video_player"/>');
$vidContainerRef.append($vidPlayer);
vidID = vid.videoID;
player = new YT.Player('video_player', {
width: '768',
height: '432',
videoId: vidID,
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
});
</script>
Ah - dzięki! To wyjaśniałoby pewne niecne zachowanie, które robiłem gdzie indziej w mojej witrynie, kiedy nic nie było zbuforowane. – mheavers
Nie ma za co. Cieszę się, że mogłem pomóc. –