2012-05-05 2 views
7

Sto provando a utilizzare l'API di YouTube per rilevare quando termina un video e quindi chiamare una funzione JS, quindi devo caricarne un altro. La funzione di chiamata è in un altro documento JS che è nella testa del mio documento HTML. Questo è il codice che ho così lontano dal sito dell'API ma sono davvero confuso con esso.youtube api fine del video carica una funzione

<pre><code> <script> 




var ytfullplayer; 
    function onYouTubePlayerAPIReady() { 
     console.log('onYouTubePlayerAPIReady'); 
     ytfullplayer = new YT.Player('myVid', { 
      events: { 

       if ''onStateChange': getVideo 

      } 
     }); 

    } 
    function getVideo(); } 


</script> </code> </pre> 

Ho chiamato la youtube api in testa alla mia pagina. Ma non sono sicuro al 100% se va lì. Qualsiasi assistenza sarebbe buona. Sto usando un video per il mio youtube.

Acclamazioni Matt

risposta

12

L'API fornisce un esempio di ciò che si sta tentando di sotto Subscribing to Events:

function onYouTubePlayerReady(playerId) { 
    ytplayer = document.getElementById("myytplayer"); 
    ytplayer.addEventListener("onStateChange", "onytplayerStateChange"); 
} 

function onytplayerStateChange(newState) { 
    alert("Player's new state: " + newState); 
} 

Bind la funzione personalizzata come il gestore per l'evento "onStateChange", e valutare il nuovo stato dall'interno In base alla parte Eventi dell'API, stai cercando lo stato 0, ad indicare che il video è terminato.

function onytplayerStateChange(newState) { 
    if (newState == 0) { 
    /* load next video */ 
    } 
} 
+0

Grazie a tutti ordinati –