我正在使用Youtube iframe api在嵌入视频上显示自定义缩略图和播放按钮。除了iOS之外,它在任何地方(包括android)工作,我得到“如果播放不会很快开始,请尝试重新启动设备”缩略图后面。如果我隐藏缩略图,我可以使用Youtube的播放按钮(使用我的控件之前)和html5播放按钮(使用我的控件之后)播放视频
我知道自动播放视频的限制,但这应该绕过它,因为它是由点击处理程序触发,并且在具有相同限制的android上工作
function loadVideo(videoID, title, description, thumbUrl, waitPlay) {
var playBtn = jQuery(".playerThumb");
jQuery(".playerTitle").text(title);
jQuery(".playerDesc").text(description);
jQuery(".playerEmbed").replaceWith("<div id='video' class='playerEmbed'></div>");
playBtn.css("background-image", "url(" + thumbUrl + ")").show().off('click').removeClass("ready");
jQuery("html, body").animate({ scrollTop: 0 }, 400, "swing", function(){});
ytPlayer = new YT.Player('video', {
videoId: videoID,
playerVars: {
rel: 0,
showinfo: 0,
autoplay: (waitPlay === true ? 0 : 1)
},
events: {
'onReady': onReady,
'onError': function(e){console.error(e);},
'onStateChange': function(e){if (e.data == YT.PlayerState.PLAYING) jQuery(".playerThumb").fadeOut();}
}
});
function onReady(e) {
playBtn.click(function() {ytPlayer.playVideo();}).addClass("ready");
if (waitPlay !== true) {
if (ytPlayer.getPlayerState() == YT.PlayerState.PLAYING) {
playBtn.hide();
}
}
}
}
如何让它在iOS上运行?我唯一的选择是只使用iOS的默认播放按钮吗?
答案 0 :(得分:0)
有同样的问题并找到了解决方案。
事实证明,在iOS上,您无法使用任何div覆盖YouTube视频,用户需要直接点击youtube iframe才能启动视频。