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中直接写php代码的方法
Jul 31 Javascript
js中创建对象的几种方式示例介绍
Jan 26 Javascript
jQuery实现页面滚动时动态加载内容的方法
Mar 20 Javascript
jquery实现具有收缩功能的垂直导航菜单
Feb 16 Javascript
基于JavaScript实现 网页切出 网站title变化代码
Apr 03 Javascript
微信小程序  自定义创建详细介绍
Oct 27 Javascript
Javascript实现数组中的元素上下移动
Apr 28 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
Jun 22 Javascript
详解bootstrap导航栏.nav与.navbar区别
Nov 23 Javascript
Vue响应式原理深入解析及注意事项
Dec 11 Javascript
node.js开发辅助工具nodemon安装与配置详解
Feb 06 Javascript
JS typeof fn === 'function' &amp;&amp; fn()详解
Aug 22 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脚本的10个技巧(4)
2006/10/09 PHP
JSON 编辑器实现代码
2009/12/06 Javascript
jQuery EasyUI 中文API Layout(Tabs)
2010/04/27 Javascript
ASP.NET jQuery 实例8 (动态添加内容到DropDownList)
2012/02/03 Javascript
JavaScript的常见兼容问题及相关解决方法(chrome/IE/firefox)
2013/12/31 Javascript
jquery将一个表单序列化为一个对象的方法
2014/01/03 Javascript
jquery选择器之内容过滤选择器详解
2014/01/27 Javascript
45个JavaScript编程注意事项、技巧大全
2015/02/11 Javascript
在Ubuntu系统上安装Ghost博客平台的教程
2015/06/17 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
5种JavaScript脚本加载的方式
2017/01/16 Javascript
jquery实现表单获取短信验证码代码
2017/03/13 Javascript
PHP 实现一种多文件上传的方法
2017/09/20 Javascript
小程序采集录音并上传到后台
2019/11/22 Javascript
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
2016/05/27 Python
Python实现Linux中的du命令
2017/06/12 Python
pycharm 将django中多个app放到同个文件夹apps的处理方法
2018/05/30 Python
Python根据欧拉角求旋转矩阵的实例
2019/01/28 Python
python多线程调用exit无法退出的解决方法
2019/02/18 Python
Python Django框架单元测试之文件上传测试示例
2019/05/17 Python
Python 中list ,set,dict的大规模查找效率对比详解
2019/10/11 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2020/04/27 Python
Python三维绘图之Matplotlib库的使用方法
2020/09/20 Python
详解CSS3选择器:nth-child和:nth-of-type之间的差异
2017/09/18 HTML / CSS
canvas使用注意点总结
2013/07/19 HTML / CSS
html5拖拽应用记录及注意点
2020/05/27 HTML / CSS
全球立体声:World Wide Stereo
2018/09/29 全球购物
优秀员工自荐信范文
2013/10/05 职场文书
护士自我鉴定范文
2013/10/06 职场文书
物流管理毕业生自荐信
2013/10/24 职场文书
技术总监个人的自我评价范文
2013/12/18 职场文书
工作室成员个人发展规划范文
2014/01/24 职场文书
留学推荐信怎么写
2014/01/25 职场文书
汽车销售员如何做职业生涯规划
2014/02/16 职场文书
2016高一新生军训心得体会
2016/01/11 职场文书