JavaScript:在父弹出窗口上添加事件监听器

标签 javascript popup

我目前正在尝试在父页面中打开的弹出窗口上添加一个事件监听器。

让我再多解释一下:iframe 中有一个按钮。单击此按钮时,将在调用/保留 iframe 的父页面中打开一个弹出窗口。

这是我的代码:

parent.window.open(url, "MyParentWindowPopUp", "width=1000, height=800");

通过这行代码,我在父页面中打开了弹出窗口。

当窗口打开时,我必须在其上创建一个监听器,所以这是我为非父窗口添加监听器时使用的:

if (window.addEventListener) {
    window.addEventListener('message', <?php echo $_htmlId; ?>_receive_message, false);
} else if (window.attachEvent) {
    window.attachEvent('onmessage', <?php echo $_htmlId; ?>_receive_message);
}

我如何转换此代码以使其适用于父弹出窗口?

提前致谢!

最佳答案

您可以存储对打开的窗口的引用

var popupWindow = parent.window.open(url, "MyParentWindowPopUp", "width=1000, height=800");

if (popupWindow.addEventListener) {
    popupWindow.addEventListener('message', <?php echo $_htmlId; ?>_receive_message, false);
} else if (popupWindow.attachEvent) {
    popupWindow.attachEvent('onmessage', <?php echo $_htmlId; ?>_receive_message);
}

关于JavaScript:在父弹出窗口上添加事件监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28437227/

相关文章:

java - 在通过 VPN 运行的 https Web 应用程序上使用 Selenium

java - JPanel 已添加到切换按钮单击上的其他 Jpanel 上

facebook - 如何在同一窗口而不是弹出窗口中打开 facebook 登录对话框?

javascript - jQuery 克隆的 div 不响应点击事件

javascript - 使用 div 类和表单进行数据操作

javascript - Angular 模块依赖项的命名约定

javascript - 加快网站加载速度

javascript - 关于 img 的错误事件。任何获取错误描述的方法

html - 如何在网站打开后显示弹出框

javascript - OAuth弹窗跨域安全React.js