返回上一个url并刷新界面的js代码


Posted in Javascript onSeptember 12, 2020

JS 重载页面,本地刷新,返回上一页

<a href="javascript:history.go(-1)" rel="external nofollow" >返回上一页</a>
<a href="javascript:location.reload()" rel="external nofollow" >重载页面,本地刷新</a>
<a href="javascript:history.go(-1);location.reload()" rel="external nofollow" >返回上一页重载页面,本地刷新</a>

history.back();
back();

上面两个方法不行,多次尝试后,用下面的解决了

location.href=document.referrer;

返回前二页并刷新的JS代码应该怎样写。

js 方法

<a href="#" rel="external nofollow" onclick="self.location=document.referrer;">返回</a>

asp自动返回并刷新的方法:

response.Write("<script language=javascript>self.location=document.referrer;</script>")

一般用于向一个页面提交action后返回前一页并刷新!

php做法

echo "<script>alert('退出成功!');location.href='".$_SERVER["HTTP_REFERER"]."';</script>";

设置删除成功后返回前一页,并刷新

if($query)
{
$page="listrenwu.php";
<!---这种方式不会刷新,只会原样返回-->
echo "<script>alert('删除成功');history.go(-1)</script>";
<!--//设置删除成功后返回前一页,并刷新-->-->
echo "<script>alert('删除成功');window.location = "".$page."";</script>";
}

这个算是php教程中最简单的哦,不多说你懂的。

下面是其他网友的补充

使用history.length判断是否有上一页面,如果没有就返回到指定页面

使用history.length判断是否有上一页面,如果没有就返回到指定页面,一般是返回到首页

function goBack(){
  if ((navigator.userAgent.indexOf('MSIE') >= 0) && (navigator.userAgent.indexOf('Opera') < 0)){ // IE
    if(history.length > 0){
      window.history.go( -1 );
    }else{
      window.location.href = "/";
    }
  }else{ //非IE浏览器
    if (navigator.userAgent.indexOf('Firefox') >= 0 ||
      navigator.userAgent.indexOf('Opera') >= 0 ||
      navigator.userAgent.indexOf('Safari') >= 0 ||
      navigator.userAgent.indexOf('Chrome') >= 0 ||
      navigator.userAgent.indexOf('WebKit') >= 0){
 
      if(window.history.length > 1){
        window.history.go( -1 );
      }else{
        window.location.href = "/";
      }
    }else{ //未知的浏览器
      window.history.go( -1 );
    }
  }
}

从这里想到一个用户的特殊需求,那就是在公众号中输入生日后 ,关闭H5,让公众号弹出二维码。当时说不可能,现在看来自己太年轻了。

window.opener=null;
window.close();

接着补充

前言

使用单页面的话 document.referrer 一直为空(.html或者ssr网页则存在值)
History.length 表示用户历史会话页面的数量。当用户从新的标签页或框架载入页面其值为“1”,每访问一个页面该值增加“1”。
因为history.length 的数量只增不减,根本不能拿来做判断。

场景

需要判断用户从微信浏览器通过浏览器打开当前网页,如果是则当用户点击返回按钮时返回到web应用(站点)首页

- 或:是否有前一页
- 通过history.length
- 不准确,如果用户曾经打开过,则会存在更多的history.length
- 如果用户不曾打开过,且直接从微信浏览器再使用系统浏览器打开,则history.length === 1(其中手机浏览器中为1,chrome控制台为2)
- 或:判断用户是否访问过
- 通过cookie或是sessionStorage

- https://oldj.net/blog/2013/08/11/browser-history-sniffing

- 或:判断 history 中是否存在指定url
- 没有找到相关方法
- 或:是否是通过微信浏览器唤醒设备浏览器再打开到当前网页的
- 没有找到相关方法
肯定还有其他方法实现 `当用户点击返回按钮时返回到web应用(站点)首页` 这个功能的,现在脑袋有点晕,如果有的话,也希望能得到分享,非常感谢。
对了,Vuex能否判断呢?实在是没有找到相关方法,或许有。

最后

别忘记监听浏览器的返回事件啦 :

window.addEventListener("popstate", function(e) {
alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能
}, false);

我是如何解决的

当用户在微信中打开web应用(站点)时,则提示用户使用浏览器打开;
再配合Cookie和sessionStorage做缓存了router记录来判断用户点击返回按钮时是否需要直接回到home页;

到此这篇关于返回上一个url并刷新界面的js代码的文章就介绍到这了,更多相关js返回上一个url内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript学习笔记(十)
Jan 17 Javascript
Jquery 1.42 checkbox 全选和反选代码
Mar 27 Javascript
JS 实现导航栏悬停效果(续)
Sep 24 Javascript
JS遍历Json字符串中键值对先转成JSON对象再遍历
Aug 15 Javascript
JS获取表格内指定单元格html内容的方法
Mar 31 Javascript
JavaScript tab选项卡插件实例代码
Feb 23 Javascript
JS基于封装函数实现的表格分页完整示例
Jun 26 Javascript
JS面试题大坑之隐式类型转换实例代码
Oct 14 Javascript
微信小程序用户位置权限的获取方法(拒绝后提醒)
Nov 15 Javascript
vue实现简单的日历效果
Sep 24 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
Oct 10 jQuery
基于react项目打包css引用路径错误解决方案
Oct 28 Javascript
Vue和React有哪些区别
Sep 12 #Javascript
浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑
Sep 12 #Javascript
解决vue项目 build之后资源文件找不到的问题
Sep 12 #Javascript
vue项目打包为APP,静态资源正常显示,但API请求不到数据的操作
Sep 12 #Javascript
vue v-on:click传递动态参数的步骤
Sep 11 #Javascript
vue Cli 环境删除与重装教程 - 版本文档
Sep 11 #Javascript
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
Sep 11 #Javascript
You might like
PHP测试程序运行时间的类
2012/02/05 PHP
PHP+MySQL实现输入页码跳转到指定页面功能示例
2018/06/01 PHP
用javascript父窗口控制只弹出一个子窗口
2007/04/10 Javascript
javascript forEach通用循环遍历方法
2010/10/11 Javascript
基于jquery实现控制经纬度显示地图与卫星
2013/05/20 Javascript
jquery使用animate方法实现控制元素移动
2015/03/27 Javascript
JS判断页面是否出现滚动条的方法
2015/07/17 Javascript
Javascript使用uploadify来实现多文件上传
2016/11/16 Javascript
vue-dialog的弹出层组件
2020/05/25 Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
2017/03/29 Javascript
JS实现的二叉树算法完整实例
2017/04/06 Javascript
用vue和node写的简易购物车实现
2017/04/25 Javascript
Angular 数据请求的实现方法
2018/05/07 Javascript
浅析我对JS延迟异步脚本的思考
2020/10/12 Javascript
微信小程序调用后台service教程详解
2020/11/06 Javascript
原生js实现自定义滚动条组件
2021/01/20 Javascript
12步教你理解Python装饰器
2016/02/25 Python
python中日志logging模块的性能及多进程详解
2017/07/18 Python
Python字符串格式化%s%d%f详解
2018/02/02 Python
Python实现的简单线性回归算法实例分析
2018/12/26 Python
Python饼状图的绘制实例
2019/01/15 Python
python求加权平均值的实例(附纯python写法)
2019/08/22 Python
python3 写一个WAV音频文件播放器的代码
2019/09/27 Python
python模块和包的应用BASE_PATH使用解析
2019/12/14 Python
Keras 使用 Lambda层详解
2020/06/10 Python
html5 Web SQL Database 之事务处理函数transaction与executeSQL解析
2013/11/07 HTML / CSS
HTML5 video播放器全屏(fullScreen)方法实例
2015/04/24 HTML / CSS
美国诺德斯特龙百货官网:Nordstrom
2016/08/23 全球购物
伊利莎白雅顿官网:Elizabeth Arden
2016/10/10 全球购物
SQL Server面试题
2016/10/17 面试题
行政管理专业推荐信
2013/11/02 职场文书
餐饮业创业计划书范文
2014/01/06 职场文书
毕业留言寄语大全
2014/04/10 职场文书
优秀团干部个人事迹
2014/05/29 职场文书
销售员态度差检讨书
2014/10/26 职场文书
以MySQL5.7为例了解一下执行计划
2022/04/13 MySQL