web开发中经常会有这种情况,在一个主页面中包含侧边导航菜单和iframe,点击菜单项,对应页面会在iframe中显示,整个页面不会刷新。但是如果设置了会话Session,在会话过期后再操作会自动redirect重定向到登录页面,经常会出现在session过期后,再点击菜单项,登录页面显示在iframe中而非显示在当前窗口的情况。还有一种的情况是使用的拦截器去拦截全部请求 判断是否有用户登陆 如果未登陆就重定向到登陆页面 那么如果不跳出iframe框架的话 会出现同样的问题
解决办法,在登录页面加上如下js代码:
if(window !=top){ top.location.href=location.href; }