【问题标题】:With Fancybox, how can I open a link in the parent window (& close the Fancy Box)?使用 Fancybox,如何在父窗口中打开链接(并关闭 Fancy Box)?
【发布时间】:2012-05-29 03:23:15
【问题描述】:

我正在使用 Fancybox 打开一个弹出窗口,允许用户在两​​种不同的登录方式之间进行选择。我想单击 Fancybox 中的任一链接以关闭该 fancybox 并在父网页中打开该链接。

这可能吗?

这是我打开 FancyBox 盒子的方法:

         $("#logonChooser").click(function () {
             $.fancybox.open({
                 href: 'LogonChooser.html',
                 type: 'iframe',
                 padding: 5
             });
         });

这是 LogonChooser.html:

<head>LogonChooser.hmtl</head>
<body>
  <a href="LogInDatabase.html">Log In</a>
  <a href="LogInFacebook.html">Log In Facebook</a>
</body>

我可以像这样关闭fancybox:

<a href="LogInDatabase.html" onclick="parent.$.fancybox.close();">Log In</a>

但我没有在父页面中获得链接。我想单击其中一个链接关闭fancybox,并在产生fancybox 的页面中打开链接,而不是在fancybox 内。

感谢任何帮助。如果有帮助,我正在使用 Fancybox 2,但如果这更容易,我愿意使用以前的版本。

【问题讨论】:

  • 我在手机上,所以我不能给出任何完整的例子,但也许这可以让你开始:给两个链接一个类。在 jQuery 中:点击“类”,关闭fancybox 和window.location,is this.attr('href')。如果需要,我稍后会提供小提琴。

标签: jquery fancybox


【解决方案1】:

将其添加到链接中就足够了:

target="_parent"

现在链接的页面会在父页面中打开,不需要关闭fancybox,因为fancybox会被替换(它也是父页面的一部分)

【讨论】:

  • 太棒了!很简单。 “真正的天才是审视显而易见的事物的能力……”
【解决方案2】:

试试$.fancybox.close 方法。

http://fancybox.net/api

【讨论】:

  • 感谢您的建议 - 它不会将链接传播到父页面。
  • 您是否尝试过 onClosed 选项?我已经看到它像 onClosed': function() { window.parent.location.href = 'yoururl.com'; }
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-31
  • 1970-01-01
  • 1970-01-01
  • 2011-01-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多