window.location和window.location.href和document.location的关系

本文详细解释了window.location和window.location.href的区别,并介绍了document.location与window.location的不同之处。此外还探讨了在不同环境下(如存在iframe的情况下)这些属性的具体表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,首先来区分window.location和window.location.href。

window.location.href是一个字符串。

而window.location是一个对象,包含属性有

hash 从井号 (#) 开始的 URL(锚)
host 主机名和当前 URL 的端口号
hostname 当前 URL 的主机名
href 完整的 URL
pathname 当前 URL 的路径部分
port 当前 URL 的端口号
protocol 当前 URL 的协议
search 从问号 (?) 开始的 URL(查询部分)

 

所以它们是包含关系,location 是 location.href 的简写,无论是访问还是赋值。从本质上来讲,location是一个对象,location.href是它的一个属性。这种怪异的行为无疑是为了兼容。

2,document.location和window.location的区别就是
document你可以理解为文档,就是你的网页
window理解为窗口,就是你的ie浏览器包含的。


无框架:简单的说,没有框架的情况下,是等同的
有框架:在有框架的情况下,最外层是相同的,在iframe里面的document.location和window.location不同的。
iframe里面的document.location 你看不ie地址变化,只改变iframe部分,
此时的window.location和top.location效果一致

转载于:https://www.cnblogs.com/zhangyabin---acm/p/5265092.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值