使用open方法时覆盖Magnific Popup close方法

时间:2014-06-30 12:42:44

标签: javascript jquery magnific-popup

我试图覆盖Magnific Popup close方法(outlined in the documentationanswered here by the developer in another question)。但是,当使用open方法创建弹出窗口(而不是附加到DOM中的元素)时,$.magnificPopup.proto无法访问。

这是我的非工作代码示例。如您所见,我在弹出窗口打开后尝试覆盖close方法。当我尝试关闭时,console.log会触发(通过我的关闭按钮或点击 ESC ),但该框不会关闭。

$.magnificPopup.open({
    items: {
        src: '/path/to/file',
        type: 'ajax',
    },
    callbacks: {
        open: function() {
            $.magnificPopup.instance.close = function() {
                console.log('close override is working');
                $.magnificPopup.proto.close.call(this);
            }
        },
        ajaxContentAdded: function() {
            var m = this;
            this.content.find('.redbutton').on('click', function(e) {
                e.preventDefault();
                m.close();
            });
        }
    },
    closeOnContentClick: false,
    closeOnBgClick: false,
    showCloseBtn: false,
    enableEscapeKey: true
});

如何关闭包装盒?

0 个答案:

没有答案