JavaScript window.location对象


Posted in Javascript onNovember 14, 2014

经常使用window.location,它的结构总是记不住,简单梳理下,方便以后查询。

示例
URL:http://b.a.com:88/index.php?name=kang&when=2011#first

属性 含义
protocol: 协议 "http:"
hostname: 服务器的名字 "b.a.com"
port: 端口 "88"
pathname: URL中主机名后的部分 "/index.php"
search: "?"后的部分,又称为查询字符串 "?name=kang&when=2011"
hash: 返回"#"之后的内容 "#first"
host: 等于hostname + port "b.a.com:88"
href: 当前页面的完整URL "http://www.a.com:88/index.php?name=kang&when=2011#first"

window.location和document.location互相等价的,可以交换使用

location的8个属性都是可读写的,但是只有href与hash的写才有意义。例如改变location.href会重新定位到一个URL,而修改location.hash会跳到当前页面中的anchor(<a id="name">或者<div id="id">等)名字的标记(如果有),而且页面不会被重新加载

注意
URL:http://b.a.com:88/index.php?name=kang&how=#when=2011#first

search: "?name=kang&how=" 第一个"?"之后
hash: "#when=2011#first" 第一个"#"之后的内容
search:"?name=kang&how="第一个"?"之后
hash:"#when=2011#first"第一个"#"之后的内容

方法

location.assign( url )
location.assign('http://www.baidu.com'); 等同于 window.location = 'http://www.baidu.com'
这种方式会讲新地址放到浏览器历史栈中,意味着转到新页面后“后退按钮”仍可以回到该页面。
location.replace( url )
与assign方法一样,但会从浏览器历史栈中删除本页面,也就是说跳转到新页面后“后退按钮”不能回到该页面。目前IE、Chrome只是简单的跳转,只有Firefox会删除本页面的历史记录。
location.reload( force )
重新载入当前页面。force为true时从服务器端重载;false则从浏览器缓存中重载,默认值false。

Javascript 相关文章推荐
Js 刷新框架页的代码
Apr 13 Javascript
node.js中的console.dir方法使用说明
Dec 10 Javascript
Jqgrid之强大的表格插件应用
Dec 02 Javascript
在javascript中创建对象的各种模式解析
May 16 Javascript
微信小程序 网络API发起请求详解
Nov 09 Javascript
jquery ztree实现右键收藏功能
Nov 20 jQuery
Angular4的输入属性与输出属性实例详解
Nov 29 Javascript
Javascript之高级数组API的使用实例
Mar 08 Javascript
微信小程序+云开发实现欢迎登录注册
May 24 Javascript
浅析vue-router实现原理及两种模式
Feb 11 Javascript
vue路由的配置和页面切换详解
Sep 09 Javascript
vue配置型表格基于el-table拓展之table-plus组件
Apr 12 Vue.js
详谈JavaScript 匿名函数及闭包
Nov 14 #Javascript
详谈JavaScript内存泄漏
Nov 14 #Javascript
js与C#进行时间戳转换
Nov 14 #Javascript
jquery ui bootstrap 实现自定义风格
Nov 14 #Javascript
使用node.js 制作网站前台后台
Nov 13 #Javascript
JavaScript 作用域链解析
Nov 13 #Javascript
jQuery $命名冲突解决方案汇总
Nov 13 #Javascript
You might like
php项目打包方法
2008/02/18 PHP
PHP统计目录中文件以及目录中目录大小的方法
2016/01/09 PHP
php远程下载类分享
2016/04/13 PHP
javascript 可以拖动的DIV(二)
2009/06/26 Javascript
node.js使用nodemailer发送邮件实例
2014/03/10 Javascript
详解js闭包
2014/09/02 Javascript
新手快速学习JavaScript免费教程资源汇总
2015/06/25 Javascript
jquery实现点击展开列表同时隐藏其他列表
2015/08/10 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
JavaScript仿百度图片浏览效果
2016/11/23 Javascript
IE8兼容Jquery.validate.js的问题
2016/12/01 Javascript
ant design 日期格式化的实现
2020/10/27 Javascript
[03:16]DOTA2完美大师赛小组赛精彩集锦
2017/11/22 DOTA
python类继承用法实例分析
2015/05/27 Python
python获取局域网占带宽最大3个ip的方法
2015/07/09 Python
在PyCharm环境中使用Jupyter Notebook的两种方法总结
2018/05/24 Python
查看django执行的sql语句及消耗时间的两种方法
2018/05/29 Python
Python Learning 列表的更多操作及示例代码
2018/08/22 Python
flask-restful使用总结
2018/12/04 Python
Python制作exe文件简单流程
2019/01/24 Python
python日志logging模块使用方法分析
2019/05/23 Python
如何使用Python 打印各种三角形
2019/06/28 Python
python用for循环求和的方法总结
2019/07/08 Python
python异常触发及自定义异常类解析
2019/08/06 Python
Pycharm 2020.1 版配置优化的详细教程
2020/08/07 Python
python开根号实例讲解
2020/08/30 Python
浅谈Python描述数据结构之KMP篇
2020/09/06 Python
解决HTML5手机端页面缩放的问题
2017/10/27 HTML / CSS
法国和欧洲海边和滑雪度假:Pierre & Vacances
2017/01/04 全球购物
英国演唱会订票网站:Ticket Selection
2018/03/27 全球购物
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
商务信函英语问候语
2015/11/10 职场文书
2016先进集体事迹材料范文
2016/02/25 职场文书
利用html+css实现菜单栏缓慢下拉效果的示例代码
2021/03/30 HTML / CSS
python 调用js的四种方式
2021/04/11 Python
MySQL窗口函数的具体使用
2021/11/17 MySQL