【问题标题】:Track closing of the created window in javascript在 javascript 中跟踪创建的窗口的关闭
【发布时间】:2015-04-28 03:54:55
【问题描述】:

我正在为我的网站进行 OAuth 登录。当用户点击 OAuth 链接时,我想打开一个新窗口,当该窗口关闭时,我想更新父页面。

这是我想到的:

$('.social').click(function()
{

    var url = $(this).attr('href'), newWindow;

    newWindow = window.open('', 'closeWhenDone', 'width=500, height=800');
    newWindow.onbeforeunload = getOAuth;
    newWindow.location.href = url;

    return false;

});

但是,一旦页面重定向到社交网络进行授权,事件监听器就消失了,因此父页面不会重新加载。

创建的窗口关闭时触发事件的方式是什么?

【问题讨论】:

    标签: javascript dom


    【解决方案1】:

    由于您提到它是用于社交网络 OAuth,这意味着弹出窗口是一个不同的域。所以不,由于同源策略,您不能触发事件。如果您可以在该窗口上触发事件,那么您也可以触发事件来窃取用户的密码。例如,您可以为用户名/密码文本框设置一个 onchange 并尝试窃取它。因此,如果它是不同的域,则不能编写脚本。您甚至可以编辑 DOM 以使其将密码发布到您的域,而不是通过更改表单 action

    【讨论】:

    • 是的,我看到了该信息,但我的问题是专门跟踪窗口何时关闭,这也不可能吗?
    • 我认为不允许任何通信。甚至“关闭”也会导致“信息泄露”,例如用户在网站上停留了多长时间
    猜你喜欢
    • 1970-01-01
    • 2018-04-25
    • 2014-07-18
    • 1970-01-01
    • 2010-09-08
    • 2023-02-17
    • 2021-07-21
    • 2021-01-20
    • 2022-01-15
    相关资源
    最近更新 更多