我正在为我的网站进行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;
});
但是,一旦页面重定向到社交网络以进行授权,事件侦听器就会消失,因此父页面不会重新加载。
创建窗口关闭时触发事件的方法是什么?
答案 0 :(得分:1)
由于您提到它是针对社交网络OAuth,这意味着弹出窗口是一个不同的域。所以不,由于同源策略,您无法触发事件。如果您可以在该窗口上触发事件,您也可以触发事件来窃取用户的密码。例如,您可以为用户名/密码文本框设置onchange并尝试窃取它。因此,如果它是一个不同的域,则无法编写脚本。您甚至可以通过更改表单action
来编辑DOM以使其将密码发布到您的域中。