-----已测试,可以使用-----

原文地址链接: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。

FireFox中iframe的返回上页问题的更多相关文章

  1. js中的referrer返回上一页使用介绍

    js中的referrer的用法举例. js完整代码:  <script language="javascript">  var refer=document.refer ...

  2. vue项目中阻止浏览器返回上一页

    vue项目中在某个页面阻止浏览器返回上一页,适用移动端.PC端. 使用场景例如: 首页 与 A页面     来回跳转,那样点击浏览器返回时也会来回跳转,本想当页面在首页的时候就不再返回了,所以这个时候 ...

  3. router-link 返回上页 和 新窗口打开链接

    1.如果使用了Vue-router的话,就可以用 this.$router.go(-1) 实现返回: 2.如果没使用vue-router,就可以用 window.history.go(-1) 实现返回 ...

  4. fragment中的WebView返回上一页

    public final class Text1Fm extends Fragment { static WebView mWeb; private View mContentView; privat ...

  5. selenium+python中,框架中,怎么返回上一个菜单

    /退回上一级表单 driver.switchTo().defaultContent();

  6. ionic中执行pop返回上一个页面,还需要执行操作

    <ion-navbar> </ion-navbar> 从A页面push到B页面拿到数据以后,从B页面pop到A页面,在A页面展示刚刚拿到的数据,用 ionViewDidEnte ...

  7. 移动端返回上一页,刚需!document.referrer 详解

    返回上一页,在PC端我们可以使用:history.go(-1)或者history.back(),可以正常返回第一层.这样,我们不需要上一页的 url 具体是什么,只要使用 history 一般都没啥问 ...

  8. Web 在线文件管理器学习笔记与总结(11)获取文件夹信息 (12)返回上一级操作

    (11)获取文件夹信息 文件夹没有修改操作. index.php: <?php require 'dir.func.php'; require 'file.func.php'; require ...

  9. Android - 页面返回上一页面的三种方式

    今年刚刚跳槽到了新公司,也开始转型做Android,由此开始Android的学习历程. 最近在解很多UI的bug,在解bug过程中,总结了在UI的实现过程中,页面返回上一页面的几种实现方式. 一. 自 ...

随机推荐

  1. python - socket - server

    网络上关于socket的介绍文章数不胜数.自己记录下学习的点点滴滴.以供将来复习学习使用. socket中文的翻译是套接字,总感觉词不达意.简单的理解就是ip+port形成的一个管理单元.也是程序中应 ...

  2. git-配置公司账号

    1.初始化配置 git config --global user.name " abc" git config --global user.email "abc@123. ...

  3. support HTML5 in IE8

    <!--this code is used to support HTML5 in IE8--> <!--[if IE]><script type="text/ ...

  4. maketrans translate

    1. makestrans()用法 语法: str.maketrans(intab, outtab]); Python maketrans() 方法用于创建字符映射的转换表,对于接受两个参数的最简单的 ...

  5. 使用百度编辑器时,报错:从客户端("...)中检测到有潜在危险的 Request.Form 值

    ajax请求失败,提交不上去 起初没找到报错的这句话,可能由于我用了其他第三方插件的原因,后来改动了一下,出现了这个错误 然后百度得到答案:http://www.cnblogs.com/tearer/ ...

  6. ArrayList 排序Sort()方法扩展

    1.sort() sort可以直接对默认继承 IComparable接口的类进行排序,如:int.string.... ArrayList arrayList = new ArrayList(); , ...

  7. cocos2dx 3.x(常见的46种动作)

    Sprite * sp= Sprite::create("Icon.png"); sp->setPosition(Vec2(, )); addChild(sp,,); // ...

  8. cocos2dx 3.x(实现帧动画(人物动画,跑马灯效果)的几种方法)

    //创建一个跑酷的精灵
  auto sprite = Sprite::create("1.png");
 //设置精灵的坐标
 sprite->setPosition(Ve ...

  9. [Android Tips] 2. Disable recent apps dialog on long press home button

    public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); Log.d(&qu ...

  10. 写在开始编写Java之前(2)——Java的环境

    上回说到Java具有跨系统性的特点 但是每个系统还是有其Java虚拟机,叫做JVM 其中Java运行环境(JRE)中就包括了JVM 假如你只要运行已经编辑好的Java语句,只要下载JRE就行了 但是作 ...