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 相关文章推荐
取得父标签
Nov 14 Javascript
前淘宝前端开发工程师阿当的PPT中有JS技术理念问题
Jan 15 Javascript
ExtJs Excel导出并下载IIS服务器端遇到的问题
Sep 16 Javascript
改变状态栏文字的js代码
Jun 13 Javascript
JavaScript常用脚本汇总(一)
Mar 04 Javascript
js实现有过渡渐变效果的图片轮播相册(兼容IE,ff)
Jan 19 Javascript
js当前页面登录注册框,固定div,底层阴影的实例代码
Oct 04 Javascript
浅谈vue项目重构技术要点和总结
Jan 23 Javascript
JS面向对象的程序设计相关知识小结
May 26 Javascript
Vue 让元素抖动/摆动起来的实现代码
May 31 Javascript
如何用原生js写一个弹窗消息提醒插件
May 24 Javascript
vue使用wavesurfer.js解决音频可视化播放问题
Apr 04 Vue.js
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知道与问问的采集插件代码
2010/10/12 PHP
JavaScript的面向对象(二)
2006/11/09 Javascript
漂亮的提示信息(带箭头)
2007/03/21 Javascript
推荐dojo学习笔记
2007/03/24 Javascript
出现“不能执行已释放的Script代码”错误的原因及解决办法
2007/08/29 Javascript
JQuery 表格操作(交替显示、拖动表格行、选择行等)
2009/07/29 Javascript
Ext.MessageBox工具类简介
2009/12/10 Javascript
JS实现点击下载的小例子
2013/07/10 Javascript
js实现浏览器窗口大小被改变时触发事件的方法
2015/02/02 Javascript
基于jquery css3实现点击动画弹出表单源码特效
2015/08/31 Javascript
探讨JavaScript语句的执行过程
2016/01/28 Javascript
探究Vue.js 2.0新增的虚拟DOM
2016/10/20 Javascript
Vue自定义指令详解
2017/07/28 Javascript
浅谈Angular2 ng-content 指令在组件中嵌入内容
2017/08/18 Javascript
Vue+Express实现登录状态权限验证的示例代码
2019/05/05 Javascript
微信小程序之几种常见的弹框提示信息实现详解
2019/07/11 Javascript
vue实现表单录入小案例
2019/09/27 Javascript
微信小程序 wx.getUserInfo引导用户授权问题实例分析
2020/03/09 Javascript
js实现简单点赞操作
2020/03/17 Javascript
[53:03]Optic vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python简明入门教程
2015/08/04 Python
深入理解Python中字典的键的使用
2015/08/19 Python
python 切换root 执行命令的方法
2019/01/19 Python
python读取并定位excel数据坐标系详解
2019/06/26 Python
djano一对一、多对多、分页实例代码
2019/08/16 Python
Python 多线程,threading模块,创建子线程的两种方式示例
2019/09/29 Python
解决pyinstaller 打包exe文件太大,用pipenv 缩小exe的问题
2020/07/13 Python
python中判断文件结束符的具体方法
2020/08/04 Python
CheapTickets泰国:廉价航班,查看促销价格并预订机票
2019/12/28 全球购物
Diesel美国网上商店:意大利牛仔时装品牌
2020/12/10 全球购物
叙述DBMS对数据控制功能有哪些
2016/06/12 面试题
开办饭店创业计划书
2013/12/28 职场文书
法律七进实施方案
2014/03/15 职场文书
网络编辑求职信
2014/04/30 职场文书
长江七号观后感
2015/06/11 职场文书
MySQL数据库 安全管理
2022/05/06 MySQL