2016-01-09 30 views
8

Ben Youtube Iframe API kullanan bir web sayfam var ve ben bu kod satırını kullanarak VideoId değiştirmek başardı: değiştirme Youtube Iframe playerVars dinamik

player.loadVideoById(videoId) 

Ama döngü hem VideoId ve çalma listesine video için sırayla

eşleşmeli ve böylece playerVars nesnesinin içindeki çalma listesi parametresini değiştirmem gerekiyor. Birisi bana buna yaklaşmanın kolay bir yolu söyleyebilir mi?

Bu orijinal kodudur: Ben aşağıda gösterildiği gibi bir değişken ayarı denedim ve loadVideoById yaptığı gibi dinamik olarak değişti

var player; 
function onYouTubeIframeAPIReady() { 
player = new YT.Player('player', { 
height: '390', 
width: '640', 
videoId: 'M7lc1UVf-VE', 
playerVars: { 
    'loop' : 1, 
    'playlist': 'M7lc1UVf-VE' 
    }, 
events: { 
    'onReady': onPlayerReady, 
    'onStateChange': onPlayerStateChange 
    } 
}); 
} 

:

player.loadVideoById(videoId) 
currentVideoId = videoId 

ve

var player; 
function onYouTubeIframeAPIReady() { 
player = new YT.Player('player', { 
height: '390', 
width: '640', 
videoId: currentVideoId, 
playerVars: { 
    'loop' : 1, 
    'playlist': currentVideoId 
    }, 
events: { 
    'onReady': onPlayerReady, 
    'onStateChange': onPlayerStateChange 
    } 
}); 
} 

cevap

0

Çalma listesini belirtmek için .loadPlaylist() kullanın ve (sayısal) Video kimliği yerine videonun (oynatma listesi içinde) x.

player.loadPlaylist({list:String, 
       listType:String, 
       index:Number, 
       startSeconds:Number, 
       suggestedQuality:String}):Void 

Bu işlev, belirtilen listeyi yükler ve onu oynar. Liste bir oynatma listesi, bir arama sonucu yayını veya kullanıcının yüklediği video akışı olabilir.

  • opsiyonel listType mülkiyet sonuçlar almak olduğunu beslemek türünü belirtir. Geçerli değerler playlist, search ve user_uploads bulunmaktadır. Varsayılan değer playlist'dur.

  • gerekli list mülkiyet YouTube'un dönmelidir videoların belirli listesini tanımlayan bir anahtar içerir.

...

1

iki farklı oynatma listelerine iki video clickEventHandler() fonksiyonunda yüklenir this example fiddle bakınız (listenin id nitelik değerine bağlı olarak öğe tıklandı).

player.loadPlaylist({ 
    list: 'PLUdAMlZtaV11U9AtszkMh0bpRqM4dtlDC', 
    index: 7 
    }); 
İlgili konular