gpt4 book ai didi

JavaScript:打开新选项卡并检测 URL 更改

转载 作者:行者123 更新时间:2023-11-30 19:51:28 24 4
gpt4 key购买 nike

我正在尝试使用 oAuth 的 URL 打开一个新窗口,但是我无法添加任何事件监听器。

const wind = window.open(msg.data.url);
console.log(wind);
wind.onload = function () {
wind.onpopstate = function (e) {
console.log('pop', e);
};
};

它什么都不做。然而结果是 window.open() 给了我一个不完整的窗口对象。这就是我所拥有的。如何为此添加事件监听器?

1

最佳答案

根据MDN web docs关于 window.open() 函数:

The returned Window reference can be used to access properties and methods of the new window as long as it complies with Same-origin policy security requirements.

这意味着如果您在此网页的终端中调用 window.open("/questions"),您将获得一个完整的窗口对象,但如果您调用 window.open("https://google.com"),它仅返回一个简化的对象,您将无法在该对象上添加事件监听器。这是为了防止cross-origin攻击。但是,如果新窗口正在监听该类型的事件,您可以通过 Window.postMessage() 将数据传输到新窗口对象。参见 here有关这方面的更多信息。

关于JavaScript:打开新选项卡并检测 URL 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54421760/

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