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将起作用。