Youtube自动播放不适用于embedded式HTML5播放器的移动设备
对于我的问题,我有一个链接<a href="http://www.youtube.com/embed/YT-ID" class="overlay_video"></a> 。 我想通过点击fancybox覆盖窗口中的链接播放video。 这不是问题。 问题是参数,例如“自动播放”或“自动隐藏”。
以下链接不起作用:
<a href="http://www.youtube.com/embed/YT-ID?autoplay=1" class="overlay_video"></a>
Overlay-Window打开,但video不能自动播放。
编辑:我想在移动设备上使用HTML5播放器。 在桌面浏览器上,它使用参数,但不在移动设备上。
事实certificate,自动播放不能在iOS设备(iPhone,iPad,iPod touch)和Android上完成。
请参阅https://stackoverflow.com/a/8142187/2054512和https://stackoverflow.com/a/3056220/2054512
看看下面的代码。 经过testing,发现在移动和平板电脑设备上工作。
(video播放器)将取代这个标签。 - >
// 2.此代码asynchronous加载IFrame Player API代码。
var tag = document.createElement('script');
tag.src =“https://www.youtube.com/iframe_api”;
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag,firstScriptTag);
// 3.此function创build一个(和YouTube播放器)
//在API代码下载之后
var player;
函数onYouTubeIframeAPIReady(){
player = new YT.Player('player',{
身高:'390',
宽度:'640',
videoId:'M7lc1UVf-VE',
事件:{
'onReady':onPlayerReady,
'onStateChange':onPlayerStateChange
}
});
}
// 4.video播放器准备就绪时,API将调用此函数。
函数onPlayerReady(event){
event.target.playVideo();
}
// 5.当玩家的状态改变时,API调用这个函数。
//该function表示在播放video(状态= 1)时,
//玩家应该玩六秒钟然后停止。
var done = false;
函数onPlayerStateChange(event){
if(event.data == YT.PlayerState.PLAYING &&!done){
setTimeout(stopVideo,6000);
done = true;
}
}
函数stopVideo(){
player.stopVideo();
}
有一种方法可以使youtube自动播放,并完成播放列表播放。 获取适用于Android的Adblock浏览器,然后转到YouTube网站,并将其configuration为桌面版本的页面,closuresAdblock浏览器,然后重新打开,并且您将拥有自动播放function的桌面版本。
使用桌面版本也意味着AdBlock将工作。 移动版本会调用独立的YouTube播放器,这就是为什么您需要桌面版本的网页,以便自动播放function可以正常工作,因此广告屏蔽function将起作用。