一旦我在我的幻想箱中播放的 youtube 视频结束,我就会尝试触发一个事件。
所以一旦视频结束,我可以自动关闭fancybox。
我有最后一个 fancybox 版本,我在 youtube API 上,坚持使用示例,但似乎 ytplayer 对象是“未定义的”,我无法使其正常工作。
我在互联网上阅读了很多东西,包括这个,这似乎很好:当 youtube 视频 id 完成时,如何让 fancybox 自动关闭?
这是我正在使用的代码:JsFiddle
$(".fancybox").fancybox({
'openEffect' : 'none',
'closeEffect' : 'none',
'overlayOpacity' : 0.7,
'helpers' : {
media : {}
},
'afterLoad' : function() {
function onYouTubePlayerReady(playerId) {
//alert(playerId);
//alert(document.getElementById("myytplayer"));
ytplayer = document.getElementById("myytplayer");
ytplayer.addEventListener("onStateChange", "onytplayerStateChange");
}
function onytplayerStateChange(newState) {
//alert("Player's new state: " + newState);
if (newState == 0){
$.fancybox.close(true);
}
}
}
});
// Launch fancyBox on first element
$(".fancybox").eq(0).trigger('click');
如果有人让这个工作,那就太棒了!我只是在完成后关闭fancybox的视频!
非常感谢