fancybox弹出页面未在iframe模式下第二次打开

时间:2012-01-09 08:44:31

标签: jquery iframe popup fancybox

我有:

$(".fancybox-href").click(function () {
    $.fancybox({
        'title': this.href,
        'width': 800,
        'height': 600,
        'href': this.href,
        'type': 'iframe'
    });
    return false;
});

在我的文档准备部分;

我的弹出功能如下:

function PopupOnClose(navigateObject, performCallbackTo) {
$.fancybox({
    'title': navigateObject.href,
    'width': 800,
    'height': 600,
    'href': navigateObject.href,
    'type': 'iframe',
    onClosed: function () {
        if (performCallbackTo != null) {
            eval(performCallbackTo + ".PerformCallback()");
        }
    }
});
return false;

}

在我的触发链接上我有:

  <a id="my-popup" class="fancybox-href" onclick="PopupOnClose(this,'DxCallbackMyAspXCallBackPanel')" href="/My-PopUp-Page.aspx" ></a>

我的问题可能正如你所料:

Fancybox第二次没有打开。当我第一次点击fancybox时出现,但它没有第二次启动:

实际上,当我第二次点击时,它会等待并且fancybox模式窗口出现的时间非常短,但之后,浏览器会直接重定向到“My-PopUp-Page.aspx”页面。

请帮忙。

感谢。

P.S:PerformCallback是一个devexpress事件,我指定的问题与它无关。这个过程运作良好。

1 个答案:

答案 0 :(得分:0)

情况已经完成。问题是使用OnClose函数初始化fancybox并完成以下操作:

$(".fancybox-href").click(function (navigateObject, performCallbackTo) {
$.fancybox({
    'title': this.href,
    'width': 800,
    'height': 600,
    'href': this.href,
    'type': 'iframe',
onClosed: function () {
    if (performCallbackTo != null) {
        eval(performCallbackTo + ".PerformCallback()");
    }
});
return false;});

Thanx大家..