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 相关文章推荐
让你的博文自动带上缩址的实现代码,方便发到微博客上
Dec 28 Javascript
jQuery实现页面滚动时层智能浮动定位实例探讨
Mar 29 Javascript
浅析JavaScript回调函数应用
May 22 Javascript
基于slideout.js实现移动端侧边栏滑动特效
Nov 28 Javascript
删除table表格行的实例讲解
Sep 21 Javascript
jQuery实现简单复制json对象和json对象集合操作示例
Jul 09 jQuery
Bootstrap模态对话框中显示动态内容的方法
Aug 10 Javascript
vue init webpack 建vue项目报错的解决方法
Sep 29 Javascript
为vue项目自动设置请求状态的配置方法
Jun 09 Javascript
关于JS模块化的知识点分享
Oct 16 Javascript
Javascript异步编程async实现过程详解
Apr 02 Javascript
vue基于better-scroll仿京东分类列表
Jun 30 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
基于文本的搜索
2006/10/09 PHP
PHP根据IP判断地区名信息的示例代码
2014/03/03 PHP
PHP 导出Excel示例分享
2014/08/18 PHP
php日期操作技巧小结
2016/06/25 PHP
对PHP依赖注入的理解实例分析
2016/10/09 PHP
php实现获取农历(阴历)、节日、节气的类与用法示例
2017/11/20 PHP
JavaScript使用prototype定义对象类型(转)[
2006/12/22 Javascript
javascript 点击整页变灰的效果(可做退出效果)。
2008/01/09 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
2014/01/31 Javascript
js中的cookie的读写操作示例详解
2014/04/17 Javascript
使用Javascript实现选择下拉菜单互移并排序
2016/02/23 Javascript
一步步教大家编写酷炫的导航栏js+css实现
2016/03/14 Javascript
JQuery validate插件验证用户注册信息
2016/05/11 Javascript
完美解决jQuery 鼠标快速滑过后,会执行多次滑出的问题
2016/12/08 Javascript
基于vue.js中事件修饰符.self的用法(详解)
2018/02/23 Javascript
JavaScript 中的12种循环遍历方法【总结】
2018/05/31 Javascript
基于JS实现数字动态变化显示效果附源码
2019/07/18 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
Django admin美化插件suit使用示例
2017/12/12 Python
Python下载网络文本数据到本地内存的四种实现方法示例
2018/02/05 Python
Python基于FTP模块实现ftp文件上传操作示例
2018/04/23 Python
大家都说好用的Python命令行库click的使用
2019/11/07 Python
世界知名接发和假发品牌:Poze Hair
2017/03/08 全球购物
全球性的众包图形设计市场:DesignCrowd
2021/02/02 全球购物
财务会计应届生求职信
2013/11/24 职场文书
2014年学习雷锋活动总结
2014/03/01 职场文书
车队司机个人自我鉴定
2014/04/17 职场文书
爱牙日活动总结
2014/08/29 职场文书
2014年仓库工作总结
2014/11/20 职场文书
大二学年个人总结
2015/03/03 职场文书
普通员工辞职信范文
2015/05/12 职场文书
务工证明怎么写
2015/06/18 职场文书
解决SpringBoot跨域的三种方式
2021/06/26 Java/Android
php去除数组中为0的元素的实例分析
2021/11/17 PHP
《王者天下》第4季首话新剧照 4月9日正式开播
2022/04/07 日漫