fancybox 关闭弹出窗口 parent.$.fancybox.close(); 无反应 fancybox 关闭弹出窗口父页面自动刷新,弹出子窗口前后事件

当我们在父页面使用 fancybox 弹出窗口后,如果想自己手动关闭,则可以

function Cancel() {
            parent.$.fancybox.close();
        }


如果关闭没有反应,最好看看父页面里面有没有设置type为iframe模式

 

$(function () {

            $("#various3").fancybox({
                onStart: function () {
                    var examId = $('input[name="examRadio"]:checked').val();
                    if (examId == null) {
                        alert("请先选择一条记录");
                        return false;
                    } else {
                        var oldhref = "IframeEditExam.aspx?eid=";
                        var newhref = oldhref + examId;
                        $("#various3").attr("href", newhref);
                    }
                },
                onClosed: function () {
                    window.location.href = window.location.href; //关闭弹出框之后自动刷新父页面
                },
                padding: 0,
                autoScale: true,
                type: 'iframe',  //这里一定要设置为 iframe  不然子页面里面 parent.$.fancybox.close();  无反应
                 600,
                height: 160,
                openEffect: 'elastic'
            });

        });

这里要注意,如果希望在弹出子页面框之前能做一个判断,我们就使用fancybox的 onStart 的方法,如果希望子页面框关闭之后还能执行一个方法,我们就使用 onClosed 方法。

 

其他的可以参考

http://www.cnblogs.com/qinpengming/archive/2013/05/26/3099848.html

原文地址:https://www.cnblogs.com/joeylee/p/3248607.html