2011-02-25 125 views
9

我正在嘗試使用此JavaScript API在今年1月推出的iframe嵌入中播放youtube播放列表。 http://apiblog.youtube.com/2011/01/introducing-javascript-player-api-for.html如何使用YouTube JavaScript API播放播放列表

請注意下面的iframe標記以及用「/ p」表示其播放列表的鏈接。

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

但是,即使該文件在http://code.google.com/apis/youtube/iframe_api_reference.html,我無法找到我怎麼能起到使用onYouTubePlayerAPIReady()調用播放列表。

回答

11

我找到了答案。

只需向您的playerVars和播放列表String | Array添加「播放列表」即可。

playerVars:{ '自動播放':0, '控制':1, '播放列表':[ 'your_video_id', '...']},

贊德示例下面:

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

如何播放播放列表ID? – 2011-11-19 00:30:22

+0

前段時間我改變了主意,停下來使用上面的IFrame API。我更改爲[JavaScript API](https://developers.google.com/youtube/js_api_reference)我直接從YouTube播放器網址加載播放列表:'swfobject.embedSWF(「http://www.youtube.com/v/ VIDEO_ID?enablejsapi = 1&playerapiid = ytplayer&version = 3 ...&playlist = yourPlayList ...'讓播放器管理視頻 – Moreno 2012-03-15 19:50:36

+0

@Moreno:切換回iframe,特別是如果你想讓你的視頻在移動設備上工作 – 2013-03-20 18:30:03

3

一個簡單的解決方案,它不需要的YouTube的IFrame(JavaScript的)API是在 Embed YouTube Videos, Playlists and More with IFrame Embeds討論。您可以從YouTube上的視頻之一複製視頻嵌入代碼(iframe的版本),並調整它是這樣的:

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

注意,沒有視頻ID ......相反,listTypelist參數指示播放器加載播放列表。根據您的特定要求,請添加autoplay=1以確保視頻在不需要JavaScript代碼的情況下自動播放。

25

由於使用播放列表ID(即不對視頻列表進行硬編碼)播放列表沒有提供適當的答案,因此如果您仍然希望使用Javascript Youtube IFrame API,則可以使用此方法。

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

希望它可以幫助誰在尋找它(因爲我):如果在playerVars指定播放列表ID如下可以省略VideoID的。

+1

我需要,謝謝你用了很長時間試圖解決如何通過ID加載播放列表而無需首先加載視頻 – BigglesZX 2012-10-29 11:31:38

+0

請將此回覆添加爲已接受@kees – 2015-03-18 08:44:01

+0

這是否會產生任何配額,或者它是否爲0配額指令? – shell 2016-09-07 02:20:15

相關問題