location 地址对象 它描述的是某一个窗口对象所打开的地址。要表示当前窗口的地址,只需要使用“location”就行了;若要表示某一个窗口的地址,就使用“<窗口对象>.location”。
注意 属于不同协议或不同主机的两个地址之间不能互相引用对方的 location 对象,这是出于安全性的需要。例如,当前窗口打开的是“[url]www.a.com[/url]”下面的某一页,另外一个窗口(对象名为:bWindow)打开的是 “[url]www.b.com[/url]”的网页。如果在当前窗口使用“bWindow.location”,就会出错:“没有权限”。这个错误是不能用错误处理程序(Event Handler,参阅 onerror 事件)来接收处理的。
属性
protocol 返回地址的协议,取值为 'http:','https:','file:' 等等。
hostname 返回地址的主机名,例如,一个“[url]http://www.microsoft.com/china/[/url]”的地址,location.hostname == 'www.microsoft.com'。
port 返回地址的端口号,一般 http 的端口号是 '80'。
host 返回主机名和端口号,如:'www.a.com:8080'。
pathname 返回路径名,如“[url]http://www.a.com/b/c.html[/url]”,location.pathname == 'b/c.html'。
hash 返回“#”以及以后的内容,如“[url]http://www.a.com/b/c.html#chapter4[/url]”,location.hash == '#chapter4';如果地址里没有“#”,则返回空字符串。
search 返回“?”以及以后的内容,如“[url]http://www.a.com/b/c.asp?selection=3&jumpto=4[/url]”,location.search == '?selection=3&jumpto=4';如果地址里没有“?”,则返回空字符串。
href 返回以上全部内容,也就是说,返回整个地址。在浏览器的地址栏上怎么显示它就怎么返回。如果想一个窗口对象打开某地址,可以使用“location.href = '...'”,也可以直接用“location = '...'”来达到此目的