2011-02-25 17 views
9

Estoy intentando reproducir una lista de reproducción de YouTube utilizando esta API de JavaScript para iframe-embeds que se presentó en enero. http://apiblog.youtube.com/2011/01/introducing-javascript-player-api-for.htmlCómo reproducir una lista de reproducción con la API de JavaScript de YouTube

Tenga en cuenta la etiqueta iframe a continuación y el enlace que tiene "/ p" para denotar que es una lista de reproducción.

<iframe src="http://www.youtube.com/embed/p/ID" width="100%" height="500" frameborder="0"></iframe> 

Sin embargo, incluso en la documentación en http://code.google.com/apis/youtube/iframe_api_reference.html no soy capaz de encontrar cómo puedo reproducir una lista de reproducción utilizando onYouTubePlayerAPIReady() llamada.

Respuesta

11

Encontré la respuesta.

Simplemente agregue 'playlist' a su playerVars y a la lista de reproducción String | Array.

playerVars: { 'reproducción automática': 0, 'controla': 1, 'lista de reproducción': [ 'your_video_id', '...']},

Como ejemplo de a continuación:

var player; 
function onYouTubePlayerAPIReady() { 
player = new YT.Player('player', { 
    height: '390', 
    width: '640', 
    videoId: 'your_video_id', 
    playerVars: { 'autoplay': 0, 'controls': 1, 'playlist':['your_video_id', '...']}, 
    events: { 
    'onReady': onPlayerReady, 
    'onStateChange': onPlayerStateChange 
    } 
}); 
} 
+1

¿Cómo se juega por ID de la lista de reproducción? –

+0

Hace un tiempo cambié de opinión y me detuve para utilizar esta API IFrame anterior. Cambié a [API de JavaScript] (https://developers.google.com/youtube/js_api_reference) Cargué la lista de reproducción directamente desde la URL del reproductor de youtube: 'swfobject.embedSWF (" http://www.youtube.com/v/ VIDEO_ID? Enablejsapi = 1 & playerapiid = yplayer & version = 3 ... & playlist = yourPlayList ... 'y deje que el jugador administre los videos – Moreno

+0

@Moreno: vuelva a cambiar a IFrame, especialmente si desea que sus videos funcionen en dispositivos móviles. –

3

Una solución sencilla que no requiere el marco flotante YouTube (JavaScript) API se discute en Embed YouTube Videos, Playlists and More with IFrame Embeds. Puede copiar el código de inserción de vídeo (versión iframe) de uno de los videos en YouTube y ajustar así:

<iframe 
    width="560" 
    height="315" 
    src="http://www.youtube.com/embed?listType=playlist&list=PASTE_YOUTUBE_PLAYLIST_ID&autoplay=1" 
    frameborder="0" 
    allowfullscreen 
></iframe> 

Tenga en cuenta que no hay una identificación de video ... en cambio, los parámetros listType y list instruyen al jugador para cargar una lista de reproducción. Para su requisito particular, agregue autoplay=1 para asegurarse de que los videos se reproduzcan automáticamente sin necesidad de código JavaScript.

25

Dado que aquí no se proporcionó una respuesta adecuada para las listas de reproducción utilizando la identificación de la lista de reproducción (es decir, no la lista de videos), esta es la forma de usarla si aún desea utilizar la API Javascript IFrame de Youtube. Se puede omitir el videoID si no se especifica el ID de lista de reproducción en los playerVars de la siguiente manera:

function onYouTubePlayerAPIReady() 
{ 
     player = new YT.Player('player', 
     { 
      height: '390', 
      width: '640', 
      playerVars: 
      { 
      listType:'playlist', 
      list: '<YOURPLAYLISTID>' 
      } 
     }); 
} 

creo que sirve que esté buscando para ello (como yo).

+1

Justo lo que Necesitaba, gracias. Pasé siglos intentando averiguar cómo cargar una lista de reproducción por ID sin cargar primero un video. – BigglesZX

+0

Agregue esta respuesta como @kees aceptado –

+0

¿Esto genera alguna cuota, o es una instrucción de cuota 0? – shell

Cuestiones relacionadas