内嵌页面session超时,内嵌页面显示登录界面问题解决方案
我们在开发web项目的时候 经常用到iframe嵌套,这里的话 不管是开发的时候,还是正式环境使用。当session超时,或者重启项目,内嵌的页面会跳转到登录页面;
如上图,用户体验很差;
解决思路 我们在登录页面 进行判断 假如是 内嵌的页面,我们就找到他的 最顶层父页面,然后然后父页面 进行 重定向到登录页面即可;
核心代码实现;
$(function(){ if(self!=top){ // 判断当前页面是否是顶层页面 var topWindow=window; // 定义最顶层页面 把当前页面赋值给topWindow while(topWindow.parent!=topWindow){ // 不断的循环 把当前页面的父页面与顶层页面对象比较 直到相同 topWindow=topWindow.parent; } topWindow.location.href="/login"; // 顶层页面跳转到 登录页面 } });
欢迎转载,记得注明java1234出处;