-----已测试,可以使用-----
原文地址链接:http://fansofjava.iteye.com/blog/1019852
在写静态页面过程中遇到了FF的history.back()和history.go() 不能返回上页的问题,但是在IE中可以使用,为了解决此问题,开始查找资料,刚开始思路还是局限于使用history.back或者go的方法上,在使用了好多方法下还是没能完成功能,从FB中跟踪 document.getElementById['iframename'].history.back()没能得到信息。
为了达到返回上页目的,现在使用referurl来实现:
document对象的referrer属性,返回导航到当前网页的超链接所在网页的URL。
Js代码:
<script type="text/javascript" language="javascript">
function back(){
var referurl;
referurl=document.referrer;
window.location.href=referurl;
return false;
}
</script>
使用该脚本可以达到在FF的iframe中返回上页的目的。
上面代码虽然能实现返回,但不能像history.back()那样,保存查询条件参数等内容。有一个稍微进步一点的改进就是先判定浏览器,再执行不同的返回方式。见链接:
http://www.iteye.com/topic/654801
上面链接这篇文章有讲个怎么判定IE浏览器,因此综合一下,大概就像下面这样:
function goBack() {
if(-[1,]){
var referurl;
referurl = document.referrer;
window.location.href = referurl;
return false;
}else{
history.back();
}
}
如果数组里面最后一个字符为逗号,一般的JS引擎会自动剔除它,但是IE不会,所以会返回false。
注:document.referrer:返回导航到当前网页的超链接所在网页的URL。