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 相关文章推荐
jquery.validate使用攻略 第五步 正则验证
Jul 01 Javascript
40款非常棒的jQuery 插件和制作教程(系列二)
Nov 02 Javascript
jQuery实现自定义下拉列表
Jan 05 Javascript
浅谈javascript中onbeforeunload与onunload事件
Dec 10 Javascript
基于jquery插件编写countdown计时器
Jun 12 Javascript
简单的js计算器实现
Oct 26 Javascript
微信小程序  自定义创建详细介绍
Oct 27 Javascript
浅谈Vuejs Prop基本用法
Aug 17 Javascript
详解JavaScript的BUG和错误
May 07 Javascript
Vue2 轮播图slide组件实例代码
May 31 Javascript
原生JS实现记忆翻牌游戏
Jul 31 Javascript
Vue插槽_特殊特性slot,slot-scope与指令v-slot说明
Sep 04 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
codeigniter上传图片不能正确识别图片类型问题解决方法
2014/07/25 PHP
PHP中shuffle数组值随便排序函数用法
2014/11/21 PHP
php写入、删除与复制文件的方法
2015/06/20 PHP
PHP简单计算两个时间差的方法示例
2017/06/20 PHP
关于PHP中协程和阻塞的一些理解与思考
2017/08/11 PHP
PHP8.0新功能之Match表达式的使用
2020/07/19 PHP
通过 Dom 方法提高 innerHTML 性能
2008/03/26 Javascript
firefox下对ajax的onreadystatechange的支持情况分析
2009/12/14 Javascript
使用JSLint提高JS代码质量方法分享
2013/12/16 Javascript
javascript实现日期按月份加减
2015/05/15 Javascript
Easyui form combobox省市区三级联动
2016/01/13 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
JS组件Bootstrap实现图片轮播效果
2016/05/16 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
node.js 抓取代理ip实例代码
2017/04/30 Javascript
详解VUE 定义全局变量的几种实现方式
2017/06/01 Javascript
NodeJS加密解密及node-rsa加密解密用法详解
2018/10/12 NodeJs
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
Bootstarp在pycharm中的安装及简单的使用方法
2019/04/19 Javascript
详解Vscode中使用Eslint终极配置大全
2019/11/08 Javascript
vue相关配置文件详解及多环境配置详细步骤
2020/05/19 Javascript
javascript canvas时钟模拟器
2020/07/13 Javascript
Angular短信模板校验代码
2020/09/23 Javascript
Python2.7简单连接与操作MySQL的方法
2016/04/27 Python
Python使用剪切板的方法
2017/06/06 Python
Python实现的爬虫刷回复功能示例
2018/06/07 Python
Python修改列表值问题解决方案
2020/03/06 Python
使用Python判断一个文件是否被占用的方法教程
2020/12/16 Python
神话般的珠宝:Ross-Simons
2020/07/13 全球购物
市三好学生主要事迹
2014/01/28 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
2014年大学班级工作总结
2014/11/14 职场文书
结婚保证书(卖身契)
2015/02/26 职场文书
建党伟业电影观后感
2015/06/01 职场文书
2016年端午节寄语
2015/12/04 职场文书
生命的关键成分来自太空?陨石说是的
2022/04/29 数码科技