我使用的是Instagram API,注销的唯一方法是通过链接https://instagram.com/accounts/logout/将用户重定向到Instagram页面(如果有人知道其他方法请告诉我)。但是,我想将用户重定向到我自己的页面。 (我之前在this帖子中尝试过这样做的方法。img
/ iframe
会追加并将用户重定向到我的页面,但用户仍然登录。)
这是我目前使用的代码:
$('.logout').on("click", function () {
window.open('https://instagram.com/accounts/logout/');
window.close();
window.location.replace("logout-page.html");
}
Instagram页面在新选项卡中成功打开并签署用户,而我的页面重定向到注销页面,但我希望Instagram注销页面在打开后自行关闭。其他人说window.close()
只有在使用window.open()
通过脚本打开时才有效,我正在做,但仍然无效。我也尝试了window.open("", self).close()
以及其他变体,这些也不适用于我。
答案 0 :(得分:1)
要关闭打开的窗口,您必须将其定义为对象。
关闭setTimeout
延迟将允许它完全打开网址
如果需要,调整延迟......但是1秒应该可以工作。
myWindow = window.open('https://instagram.com/accounts/logout/');
setTimeout(function(){
myWindow.close();
},1000);
修改强>
似乎不可能“隐藏”弹出窗口...
我在this answer找到了一种方法,但它需要在弹出页面中添加一个脚本...
使用上面的脚本,弹出窗口将作为新选项卡打开...并且仅在1秒内保持打开状态。这是我能说的最好的......直到我发现this other solution你可以试试。
答案 1 :(得分:1)
window.open
返回已打开的新窗口的对象。要修改此新窗口,您必须使用返回的对象,如:
new_window = window.open("url");
new_window.close();
无论如何,这不是一个好的解决方案,因为您不知道新打开的窗口是否已成功加载页面或已完成加载页面。
我建议您只需在新窗口中打开注销页面并重定向当前页面,如下所示:
my_window = window.open("url", "Window-Name", "height=200,width=200");
document.location = "your_url"; //redirects the current page...`
答案 2 :(得分:0)
只需在某处附加DOM的隐藏iframe中打开网址即可。下面是jQuery代码:
$('#content').append('<div style="display:none"><iframe src="https://instagram.com/accounts/logout/" width="0" height="0"></iframe></div>');
这是我在https://www.picosdash.com中实施注销并允许在应用中登录多个帐户的方式,效果很好。