我目前正在尝试在父页面中打开的弹出窗口上添加一个事件监听器。
让我再多解释一下: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/