Триггер, когда видео на YouTube закончено

Ниже приведен мой код.

<object width="620" height="327">
    <param name="movie" value="http://youtube.googleapis.com/v/0s5lxs7Xvu8?autoplay=1&showinfo=0&controls=1&rel=0"></param>
    <param name="allowScriptAccess" value="always"></param>
    <embed src="http://youtube.googleapis.com/v/0s5lxs7Xvu8?autoplay=1&showinfo=0&controls=1&rel=0" id="video1" type="application/x-shockwave-flash" allowscriptaccess="always" width="620" height="327" onended="videoEnded()"></embed>
</object>

Я хочу отображать предупреждающее сообщение, когда видео подходит к концу. Не могли бы вы помочь мне в этом? Нужно сделать это в jQuery


person kds    schedule 09.05.2014    source источник
comment
Я добавил следующий код. player.addEventListener(onStateChange, function(state){ if(state === 0){ // видео закончилось, сделайте что-нибудь здесь. } }); Но это не работает   -  person kds    schedule 09.05.2014
comment
Вы перешли на использование JS API для встраивания видео? На данный момент ваш код использует встраивание HTML.   -  person Rory McCrossan    schedule 09.05.2014


Ответы (1)


вам нужно прослушать событие onStateChange, поймать его и посмотреть, говорит ли событие изменения состояния о том, что песня закончилась.

new YT.Player("yt_element", {
    videoId: your_video_id,
    .. height with etc ....
    , events: {
        'onStateChange': function(event){
            if(event.data == YT.PlayerState.ENDED){
                ... show the song ended alert ...
            }
        }
    }
});
person kristok    schedule 09.05.2014
comment
он говорит ReferenceError: YT не определен - person kds; 09.05.2014
comment
Вы следовали инструкциям по встраиванию сюда? похоже, что у вас просто есть встроенный iframe developers.google.com/youtube/ - person kristok; 09.05.2014