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 相关文章推荐
Track Image Loading效果代码分析
Aug 13 Javascript
Prototype RegExp对象 学习
Jul 19 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
Aug 14 Javascript
Javascript玩转继承(二)
May 08 Javascript
JS实现简单的键盘打字的效果
Apr 24 Javascript
AngularJS转换响应内容
Jan 27 Javascript
js检测离开或刷新页面时表单数据是否更改的方法
Aug 02 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
Jun 09 Javascript
JS判断数组那点事
Oct 10 Javascript
Vue-input框checkbox强制刷新问题
Apr 18 Javascript
vue.js自定义组件实现v-model双向数据绑定的示例代码
Jan 08 Javascript
js实现筛选功能
Nov 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
CI框架入门示例之数据库取数据完整实现方法
2014/11/05 PHP
php获取Google机器人访问足迹的方法
2015/04/15 PHP
谈谈你对Zend SAPIs(Zend SAPI Internals)的理解
2015/11/10 PHP
[转]JS宝典学习笔记
2007/02/07 Javascript
JavaScript 特殊字符
2007/04/05 Javascript
Javascript中获取出错代码所在文件及行数的代码
2010/09/23 Javascript
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
javascript的parseFloat()方法精度问题探讨
2013/11/26 Javascript
使用Javascript写的2048小游戏
2015/11/25 Javascript
BootStrap实现手机端轮播图左右滑动事件
2016/10/13 Javascript
js微信支付实现代码
2016/12/22 Javascript
JS中实现函数return多个返回值的实例
2017/02/21 Javascript
vue.js加载新的内容(实例代码)
2017/06/01 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
vue element-ui读取pdf文件的方法
2019/11/26 Javascript
JavaScript中如何对多维数组(矩阵)去重的实现
2019/12/04 Javascript
Vue 中获取当前时间并实时刷新的实现代码
2020/05/12 Javascript
Vue使用CDN引用项目组件,减少项目体积的步骤
2020/10/30 Javascript
Vue用mixin合并重复代码的实现
2020/11/27 Vue.js
Python和C/C++交互的几种方法总结
2017/05/11 Python
Python返回数组/List长度的实例
2018/06/23 Python
python 高效去重复 支持GB级别大文件的示例代码
2018/11/08 Python
使用Python 正则匹配两个特定字符之间的字符方法
2018/12/24 Python
python tkinter之 复选、文本、下拉的实现
2020/03/04 Python
python raise的基本使用
2020/09/10 Python
python3中TQDM库安装及使用详解
2020/11/18 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
2020/12/09 Python
AP澳洲中文网:澳洲正品直邮,包税收件无忧
2019/07/12 全球购物
莫斯科大型旅游休闲商品超市:Camping.ru
2020/09/16 全球购物
政法学院毕业生求职信
2014/02/28 职场文书
煤矿安全演讲稿
2014/05/09 职场文书
个人纪律作风整改措施思想汇报
2014/10/12 职场文书
离婚协议书包括哪些内容
2014/10/16 职场文书
教师正风肃纪剖析材料
2014/10/20 职场文书
2014年少先队工作总结
2014/12/03 职场文书