我以为我会以不同的方式攻击这个问题。至于我如何让这两者一起工作?哈希标记本身不起作用 - 它确实打开弹出窗口,但不会触发afterShow函数来填充YouTube视频ID。如果您直接点击页面上的链接,一切正常。
//Fire Up Fancybox
$(".fancybox").fancybox({
//Load YouTube ID after AJAX call to TXT Files
afterShow: (function() {
$("div.video-container iframe").each(function(){var idAdd=$(this).attr("id");$(this).attr("src","http://www.youtube.com/embed/"+idAdd+"?rel=0&autoplay=0&modestbranding=1&showinfo=0&autohide=1")});
})
});
//Look for Hash in URL to fire Fancybox
var thisHash = window.location.hash;
if(window.location.hash) {
$(thisHash).fancybox().trigger('click');
}
我的目标是 - 如果我直接点击FB2链接或从Hash标签进入,它将触发FB2,然后填充YouTube网址。我也想清除URL中的哈希,以防影响事情(不确定)。
HTML文件,其中有一堆链接可以打开以下文本文件和FB2 ajax
<a id="openfancy1" class="fancybox fancybox.ajax" href="text/openfancy1.txt">Open FB</a>
文本文件包含YouTube视频和许多div +内容。单击FB2链接后,将调用此文件并将其填充到HTML文件中。
<iframe id="YouTube ID of Video" width="640" height="340" src="" frameBorder="0"></iframe> more content and divs....