浏览器对象

浏览器对象

# Window

Location

Location对象存储在Window对象的Location属性中,表示那个窗口中当前显示的文档的Web地址。它的href属性存 放的是文档的完整URL,其他属性则分别描述了URL的各个部分。这些属性与Anchor对象(Area对象)URL属性非常相似。当一个Location对象被转换成字符串,href属性的值被返回。这意味着你可以使用表达式location来替代location.href。不过Anchor对象表示的是文档中的超链接,Location对象表示的却是浏览器当前显示的文档的URL(或位置)。但是Location对象所能做的远远不止这些,它还能控制浏览器显示的文档的位置。如果把一个含有URL的字符串赋予Location对象或它的href属性,浏览器就会把新的URL所指的文档装载进来,并显示出来。

除了设置locationlocation.href用完整的URL替换当前的URL之外,还可以修改部分URL,只需要给Location对象的其他属性赋值即可。这样做就会创建新的URL,其中的一部分与原来的URL不同,浏览器会将它装载并显示出来。例如,假设设置了Location对象的hash属性,那么浏览器就会转移到当前文档中的一个指定的位置。同样,如果设置了search属性,那么浏览器就会重新装载附加了新的查询字符串的URL

除了URL属性外,Location对象的reload()方法可以重新装载当前文档,replace()可以装载一个新文档而无须为它创建一个新的历史记录,也就是说,在浏览器的历史列表中,新文档将替换当前文档。

Location对象属性

属性 描述
hash 设置或返回从井号(#)开始的URL()
host 设置或返回主机名和当前URL的端口号,
hostname 设置或返回当前URL的主机名,
href 设置或返回完整的URL
pathname 设置或返回当前URL的路径部分,
port 设置或返回当前URL的端口号,
protocol 设置或返回当前URL的协议,
search 设置或返回从问号(?)开始的URL(查询部分)

Location对象方法

属性 描述
assign() 加载新的文档,
reload() 重新加载当前文档,
replace() 用新的文档替换当前文档

Properties

对于这样一个URL

http://www.maidq.com/index.html?ver=1.0&id=6#imhere

我们可以用javascript获得其中的各个部分

1, window.location.href整个URl字符串(在浏览器中就是完整的地址栏)本例返回值: http://www.maidq.com/index.html?ver=1.0&id=6#imhere

2,window.location.protocol URL的协议部分 本例返回值:http:

3,window.location.host URL的主机部分 本例返回值:www.maidq.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

Methods

获取路径参数

function GetQueryString(name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return unescape(r[2]);
  return null;
}
// 调用方法
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));

# Performance:性能测试

下一页