2012-03-02 108 views
1

我试图让fancybox 1.3.4在被调用时自动打开。我们曾经使用过:有没有一种方法可以在调用Fancybox时自动打开.fancybox()

jQuery("a.vidHelp").fancybox(fbOptions).trigger('click'); 

但是,这似乎不工作了。 fancybox有一个使用swfObject加载的div。

无论SwfObject的,也没有的fancybox似乎我目前正在使用此,当他们完成加载所以触发器:

var checkFancybox = window.setInterval(function() { 
    if (jQuery("object#flashContent").length) { 
     jQuery("a.vidHelp").trigger("click"); 
     clearInterval(checkFancybox); 
    } 
}, 1000); 

这对于要创建的Flash对象和触发点击检查。

有没有更优雅的解决方案?

+0

swfobject有一个可选的回调函数,可以在成功嵌入时触发 – pipwerks 2012-03-03 02:42:58

+0

谢谢,我没有发现! – 2012-03-05 08:42:32

回答

0

我的代码是这样

在HTML

<a id="btn" title="OPEN FANCYBOX" href="#hiddenPre"> 
<div style="display:none"><pre id="hiddenPre">dummy</pre></div> 

在JS

$("#btn").click(function(){ 
    $("#hiddenPre").text(textYouWantToShow); 
}); 

//fancybox binding 
$("a#btn").fancybox({ 
    'hideOnContentClick': true 
}); 

,并在你的情况,你只需要调用

$("#hiddenPre").text(textYouWantToShow); 

应该做的技巧

相关问题