如何打开两个连续的fancybox窗口?

时间:2014-06-18 11:44:57

标签: javascript jquery fancybox

我正在尝试打开两个fancybox窗口。当第一个窗口关闭时 - " afterClose"函数触发下一个。

问题是," afterClose" SECOND弹出窗口甚至在打开之前被调用。因此,正在立即调用SECOND弹出窗口的closeCallback函数,并且页面会发生变化。 (它应该做什么,等到用户按下“确定”按钮后 - 然后再更改页面。)

我尝试使用超时时间长达5秒,但它仍无效。

有人可以帮忙吗?...

谢谢!


要明确:

我想要发生的是: 第一个弹出窗口打开。用户按下“确定”。第一个弹出窗口关闭第二个弹出窗口打开。用户按“确定”。第二个弹出窗口关闭。页面更改为主页。

我现在得到的是:

首先打开弹出窗口。用户按下“确定”。第一个弹出窗口关闭第二个弹出窗口打开一秒钟,然后立即关闭,页面变为主页。

function openNotificationPopup(message, callback, closeCallback) {

    $('.fancybox-outer').append('<button class="popupBtn">OK</button>');

    $.fancybox.open({
        content: message,
        afterClose: function() {
            if (closeCallback !== undefined) {
                closeCallback();
            } else if (callback !== undefined) {
                callback();
            }
        }
    });


    $(document).on('click', '.popupBtn', function() {
        if (callback !== undefined) {
            callback();
        }
        $.fancybox.close();
    });
}

function openSecondPopup(){
     setTimeout(openNotificationPopup(msg2, gotoGame, goHome),5000);
}

openNotificationPopup(msg1, openSecondPopup, goHome);

0 个答案:

没有答案