2014-09-16 31 views
5

JS aracılığıyla program aracılığıyla bir YouTube videosunu (bir iFrame içinde) oynatmaya çalışıyorum. İşte programlı bir YouTube video oynatmak için kullanıyorum kodudur: YouTube'un yerli oynatma özelliği destekleyen cihazlarda, AncakYouTube iFrame API'si: Programlı olarak yerel olarak oynatılsın mı?

iframe.postMessage('{"event":"command","func":"playVideo","args":""}', '*'); 

, iFrame içinde Video siyah bir ekran haline gelir ve yerli yukarı açılmaz video oynatıcı.

Mümkün olduğunda bir videonun program aracılığıyla oynatılması için iFrame API'sini nasıl kullanabilirim?

+0

Lütfen bir jsfiddle belirtin. PostMessage'i kendiniz aramanız gerekeceğine inanmıyorum, youtube API'sını kullanarak oynatıcıyı oluşturup API ile iletişim kurmak için kullanmalısınız - postMessage'ı sizin için arayacaktır. – Etai

cevap

4

Youtube Iframe Player API'sini kontrol etmenizi tavsiye ederim. "Autoplay: 1" yüklendiğinde, video autoplay olmasını istiyorsanız https://developers.google.com/youtube/iframe_api_reference#Playback_controls

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

function onPlayerReady(event) { 
    event.target.setVolume(100); 
    event.target.playVideo(); 
} 
1

, sizin JS bu özelliği kullanın. Daha fazla bilgi için: https://developers.google.com/youtube/player_parameters#autoplay

"onReady" olayını kullanırsanız, aygıtın otomatik yürütmeye izin verip vermediğini algılamanız gerekir. Bu kırılgan UA koklama kullanmazsanız test etmek kolay bir şey değildir. Bu örnekte yerleşik yöntemi kullanmak çok daha güvenilirdir.

target.playVideo(); 

Ancak, yine iOS'ta kullanıcı etkileşimi olmadan bunu yapamaz: sadece programlı bir video oynatmak istiyorsanız

, bu yöntemi kullanabilirsiniz. Ve sadece iOS8'de çalışır, önceki sürümler JS'nin video oynatmasını tetiklemesine izin vermez.

İlgili konular