最近 项目遇到个问题, 随着浏览器的升级. 开启的页面,无法通过按钮点击关闭...后来上网查 ,才知道 只有脚本打开的页面才能用脚本关闭. 于是想着把粘贴进来的页面给跳转其它页面(首页或登录页) ;
1. 用 window.opener , 发现挺好,粘贴的的都跳转, 但是如果把父页面关闭 ,刷新已打开的那个页面,也会跳转. (NO)
2. 用window.referer, 这个获取页面来源链接; 但是如果 把鼠标点击地址栏 回车 来源地址就会变了. 已打开页面还是会跳转(NO)
3.我们项目有个计时(根据页面来区分) 存放在 window.name, 于是结合 window.opener 就有了以下代码 可以判断地址栏粘贴进入 还是刷新进入 (YES)
var date = new Date();
var currentTime = date.getTime();
var timecur=window.name ;
if(timecur!=null&&timecur!=""){//如果有值,说明刷新了
}else{//
if(window.opener==null){//沒值,则不是脚本打开
if(base.getCookie("loginUser")!=null){//这个只是判断 是否能拿到用户账号
window.location.href="/bps/frame/t/frame.html?loginUserAccount="+base.getCookie("loginUser").userAccount ;
}else{
window.location.href="/bps/index.html" ;
}
window.name = currentTime ;
return ;
}
}
浏览器兼容 ie8+ 火狐 谷歌
欢迎大家交流.