通过按钮关闭iframe类型的弹出模式窗口

时间:2014-09-25 17:10:18

标签: javascript jquery magnific-popup

我有一个父页面和子页面共享 jquery 事件的 file.js 文件。

我正在与Magnific Popup合作,我有:

$("#addDetailButton").magnificPopup({
        items: {
              src: 'someURL'
        },
        type: 'iframe',
        enableEscapeKey: false,
        modal: true

});

我的弹出窗口基于iframe,并且是modal。如何用button html元素关闭模态窗口?我对StackOverflow和所有回复进行了研究,并基于inline类型。

我试过了

<input id="cancel" type="button" value="Cancel"/> // child page

$("#cancel").click(function(){
        $.magnificPopup.close();
});

我总是通过Firefox的Web控制台获得以下内容:

TypeError: $.magnificPopup is undefined

谢谢

1 个答案:

答案 0 :(得分:2)

Iframe有自己的范围,它无法直接访问周围的范围。但是您可以使用父全局变量在主窗口中升级。

试试这个:

parent.$.magnificPopup.close();

您可以在此处找到有关此主题的更多信息:Calling a parent window function from an iframe