如何从子窗口关闭fancybox?

父链接:

Provide your feedback here 

用于启动fancybox的jQuery代码是……

 $("#feed").fancybox(); 

https://stackoverflow.com/questions/4390581/how-to-close-fancybox-from-child-window/feedback.php中的代码…

     $(document).ready(function(){ $("#feed_submit").click(function(){ //Name is alerted alert($("#name").val()); //code to close fancy box(Not working) $.fancybox.close(); }); });    

单击提交按钮后,我需要使用jquery关闭此页面中的精美框

我试过用

 $.fancybox.close(); parent.$.fancybox.close(); 

但这对我不起作用。 如果有任何关闭此ajax表格内的选项,请告诉我。

以下代码应该可以工作,并且已经为许多人工作

 parent.$.fn.fancybox.close(); 

但是,我也看到,例如在这个问题中 ,jQuery是以noConflict模式运行的,用户并不知道。 如果是这种情况,则必须将脚本修改为

 parent.jQuery.fn.fancybox.close(); 

如果这些都不起作用,请使用Firebug for Firefox或Chrome开发人员控制台等工具查看是否有错误消息,并向我们报告它是什么。

尝试

 window.parent.$.fancybox.close(); 

假设 $.fancybox.close(); 在父窗口中工作。

尝试:

 $("#fancybox-close").trigger('click'); 

当您使用类型为iframe的fancybox时,在iframe框中您必须插入所有库,如jquery等。然后关闭iframe花式框只需使用parent。$。fancybox.close()

请记住,在新窗口中打开类型为“iframe”的fancybox,在同一窗口中打开包含其他类型的fancybox。

面对同样的问题,这是我能找到的唯一解决方案:

代码本身是:

 parent.jQuery.fancybox.close(); 

它运行在一个函数中:

 jQuery("#cancelId").click(function(){ parent.jQuery.fancybox.close(); }); 

希望它有所帮助,Naore

 $.fn.fancybox.close(); 

这有用吗?

//在子窗口或iframe上放置此函数:

function closeIframe(){ parent.closeIframeMain(); }

//和此链接关闭此窗口

Close window

//然后在父窗口上放置此函数:

function closeIframeMain(){ jQuery("#fancybox-close").trigger("click"); }

它肯定会工作,只需复制并粘贴它:

Close from Inside

实际上它会触发关闭按钮,如果fancybox本身,它在大多数情况下都有效。

玩得开心:)

我有同样的问题,但使用ASP.NET。

基本上,在页面上,我打开一个页面(里面有一个表单控件),如下所示:

 $.fancybox({ href: '/ContactUs.aspx', type: 'iframe', padding: 60, width: 465, height: 670, maxWidth: 465, maxHeight: 670, }); 

当我在FancyBox上单击关闭时,它可以正常工作,但是如果我先提交它然后关闭它,即使页面位于同一个域中, fancyBox也不会关闭。

最后,我发现你必须在打开FancyBox时设置autoSize:false:

  $.fancybox({ href: '/ContactUs.aspx', type: 'iframe', padding: 60, width: 465, height: 670, maxWidth: 465, maxHeight: 670, autoSize: false }); 

它现在应该工作。 如果这适用于其他任何人,请回复。 干杯。

parent.jQuery.fancybox.close(); 用。$。 – IE8中的折扣。 有了这个 – 一切都好。