gpt4 book ai didi

javascript - 如何与弹出窗口来回通信

转载 作者:行者123 更新时间:2023-11-30 17:59:04 24 4
gpt4 key购买 nike

在我的网页中我使用这个函数来显示一个小的弹出窗口

function popup (url) 
{
poppedUpWindow= window.open(url, "PopupWindow", "width=400,height=300");
poppedUpWindow.focus();
return false;
}

我需要在两个窗口之间共享对象。我试过这样做,但现在可以了

poppedUpWindow.document.documentElement.addEventListener("load", foo, false);

我也有可能做这样的事情

 function popup (url) 
{
poppedUpWindow= window.open(url, "PopupWindow", "width=400,height=300");
var tmp = poppedUpWindow.document;
tmp.write('<html><head><title>popup</title>');
....
tmp.close();
poppedUpWindow.focus();
return false;
}

但这种方法会使解决问题变得更加困难。那么我应该如何将信息从父窗口传递到弹出窗口,反之亦然呢?

最佳答案

来自 postMessage 的文档:

像这样发送消息:

otherWindow.postMessage(message, targetOrigin);

otherWindow 可以通过执行以下 JavaScript 来监听派发的消息:

window.addEventListener("message", receiveMessage, false);

function receiveMessage(event)
{
if (event.origin !== "http://example.org:8080")
return;

// ...
}

请记住浏览器支持:http://caniuse.com/#feat=x-doc-messaging
IE 8+、Firefox 3+、Chrome 所有版本、Opera 9.5+、Safari 4+

关于javascript - 如何与弹出窗口来回通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17474686/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com