用户通过fancybox(javascript)弹出窗口登录后,我希望重新加载父页面,以便他们可以访问登录的功能.
目前我这样做:
<a href="javascript:window.top.location.reload(true)" class="continue">Continue</a>
Run Code Online (Sandbox Code Playgroud)
这很好用,但唯一的问题是它完全重新加载整个页面:重新下载所有的css和javascipt等.
我想要做的就是正常重新加载页面,而不是完全刷新.我怎样才能做到这一点?
(我不知道确切的URL,因为登录可以通过fancybox从任何页面完成,所以我无法对URL进行硬编码.)
另一种重新加载我在facebook图形api中看到的页面的方法如下:
window.location = window.location
Run Code Online (Sandbox Code Playgroud)
或者在你的情况下:
window.top.location = window.top.location
Run Code Online (Sandbox Code Playgroud)
此解决方案重新加载页面而不尝试重新发送POST请求.可能有用.有关更多信息,请查看以下SO问题.