JavaScript window.location对象

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

示例

URL:http://170.18.10.158:8090/index.jsp?name=yfli&when=2016#first

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

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

location的8个属性都是可读写的,但是只有href与hash的写才有意义。

例如改变location.href会重新定位到一个URL,而修改location.hash会跳到当前页面中的anchor(<a id="name">或者<div id="id">等)名字的标记(如果有),而且页面不会被重新加载

注意

URL:http://170.18.10.158:8090/index.jsp?name=yfli&when=2016#first

search: "?name=yfli&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。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值