我正在为我的网站做一个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;
});但是,一旦页面重定向到社交网络以获得授权,事件侦听器就会消失,因此父页面不会重新加载。
当创建的窗口关闭时,如何触发事件?
发布于 2015-04-27 19:54:24
因为你提到它是为一个社交网络OAuth,这意味着弹出是一个不同的领域。所以不,你不能因为同样的起源政策而引发事件。如果您可以在该窗口上触发事件,您也可以触发事件来窃取用户的密码。例如,您可以为用户名/密码文本框设置onchange并尝试窃取它。因此,如果它是一个不同的域,您就不能编写它的脚本。您甚至可以通过更改表单action来编辑DOM,使其将密码发布到您的域。
https://stackoverflow.com/questions/29904709
复制相似问题