js 页面刷新location.reload和location.replace的区别小结


Posted in Javascript onDecember 24, 2009

首先介绍两个方法的语法:
reload 方法,该方法强迫浏览器刷新当前页面。
语法: location.reload([bForceGet])
参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新")

replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。
语法: location.replace(URL)
在实际应用的时候,重新刷新页面的时候,我们通常使用: location.reload() 或者是 history.go(0) 来做。因为这种做法就像是客户端点F5刷新页面,所以页面的method="post"的时候,会出现“网页过期”的提示。那是因为Session的安全保护机制。可以想到: 当调用 location.reload() 方法的时候, aspx页面此时在服务端内存里已经存在, 因此必定是 IsPostback 的。如果有这种应用: 我们需要重新加载该页面,也就是说我们期望页面能够在服务端重新被创建, 我们期望是 Not IsPostback 的。这里,location.replace() 就可以完成此任务。被replace的页面每次都在服务端重新生成。你可以这么写: location.replace(location.href)

下面是相关的应用与知识点:
window.location.href
window.top.location.replace("https://3water.com")
top.location.href("https://3water.com")
window.navigate ("https://3water.com")
Html:
<meta http-equiv="Refresh" content="0; url=http://baidu.com/" >
---------------------------------------
URL即:统一资源定位符 (Uniform Resource Locator, URL)
完整的URL由这几个部分构成:
scheme://host:port/path?query#fragment
scheme:通信协议
常用的http,ftp,maito等
host:主机
服务器(计算机)域名系统 (DNS) 主机名或 IP 地址。
port:端口号
整数,可选,省略时使用方案的默认端口,如http的默认端口为80。
path:路径
由零或多个"/"符号隔开的字符串,一般用来表示主机上的一个目录或文件地址。
query:查询
可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技术制作的网页)传递参数,可有多个参数,用"&"符号隔开,每个参数的名和值用"="符号隔开。
fragment:信息片断
字符串,用于指定网络资源中的片断。例如一个网页中有多个名词解释,可使用fragment直接定位到某一名词解释。(也称为锚点.)
对于这样一个URL
https://3water.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere

我们可以用javascript获得其中的各个部分
1, window.location.href
整个URl字符串(在浏览器中就是完整的地址栏)
本例返回值: https://3water.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere
2,window.location.protocol
URL 的协议部分
本例返回值:http:
3,window.location.host
URL 的主机部分
本例返回值:3water.com
4,window.location.port
URL 的端口部分
如果采用默认的80端口(update:即使添加了:80),那么返回值并不是默认的80而是空字符
本例返回值:""
5,window.location.pathname
URL 的路径部分(就是文件地址)
本例返回值:/fisker/post/0703/window.location.html
6,window.location.search
查询(参数)部分
除了给动态语言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值
本例返回值:?ver=1.0&id=6
7,window.location.hash
锚点
本例返回值:#imhere

Javascript 相关文章推荐
JavaScript 封装Ajax传递的数据代码
Jun 05 Javascript
jQuery 入门级学习笔记及源码
Jan 22 Javascript
jquery选择器原理介绍($()使用方法)
Mar 25 Javascript
js控制iframe的高度/宽度让其自适应内容
Apr 09 Javascript
js用typeof方法判断undefined类型
Jul 15 Javascript
js实现点击文本框显示日期选择器特效代码分享
May 21 Javascript
js实现的二级横向菜单条实例
Aug 22 Javascript
AngularJS页面访问时出现页面闪烁问题的解决
Mar 06 Javascript
jqueryMobile 动态添加元素,展示刷新视图的实现方法
May 28 Javascript
Vue.js图片预览插件使用详解
Aug 27 Javascript
详解如何为你的angular app构建一个第三方库
Dec 07 Javascript
vue实现分页加载效果
Dec 24 Javascript
CSS+Jquery实现页面圆角框方法大全
Dec 24 #Javascript
HTA版JSMin(省略修饰语若干)基于javascript语言编写
Dec 24 #Javascript
javascript下arguments,caller,callee,call,apply示例及理解
Dec 24 #Javascript
关于Aptana Studio生成自动备份文件的解决办法
Dec 23 #Javascript
window.js 主要包含了页面的一些操作
Dec 23 #Javascript
js 效率组装字符串 StringBuffer
Dec 23 #Javascript
jquery 表单取值常用代码
Dec 22 #Javascript
You might like
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
PHP临时文件的安全性分析
2014/07/04 PHP
PHP实现对站点内容外部链接的过滤方法
2014/09/10 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
typecho插件编写教程(五):核心代码
2015/05/28 PHP
smarty模板判断数组为空的方法
2015/06/10 PHP
PHP获取二叉树镜像的方法
2018/01/17 PHP
TP3.2.3框架文件上传操作实例详解
2020/01/23 PHP
JS查看对象功能代码
2008/04/25 Javascript
Javascript中的相等与不等运算
2010/04/25 Javascript
EXTjs4.0的store的findRecord的BUG演示代码
2013/06/08 Javascript
javaScript面向对象继承方法经典实现
2013/08/20 Javascript
JavaScript显示当然日期和时间即年月日星期和时间
2013/10/29 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
JS数组array元素的添加和删除方法代码实例
2015/06/01 Javascript
阻止表单提交按钮多次提交的完美解决方法
2016/05/16 Javascript
jquery事件绑定解绑机制源码解析
2016/09/19 Javascript
ES6使用Set数据结构实现数组的交集、并集、差集功能示例
2017/10/31 Javascript
vue+element实现批量删除功能的示例
2018/02/28 Javascript
详解wepy开发小程序踩过的坑(小结)
2019/05/22 Javascript
vue print.js打印支持Echarts图表操作
2020/11/13 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
Python实现App自动签到领取积分功能
2018/09/29 Python
Python2和Python3中urllib库中urlencode的使用注意事项
2018/11/26 Python
python+opencv实现高斯平滑滤波
2020/07/21 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
Python学习笔记之函数的参数和返回值的使用
2019/11/20 Python
Python pandas如何向excel添加数据
2020/05/22 Python
美国儿童玩具、装扮和玩偶商店:Magic Cabin
2018/09/02 全球购物
采购人员的个人自我评价
2014/01/16 职场文书
写给老师的表扬信
2014/01/21 职场文书
大学自我评价
2014/02/12 职场文书
大学生党校培训心得体会
2014/09/11 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
民事调解协议书
2016/03/21 职场文书
浅谈pytorch中的dropout的概率p
2021/05/27 Python