一 . 定义
location是最有用的BOM对象之一,它提供了与当前窗口中加载的文档有关的信息,还提供了一些导航的功能
location对象是很特别的一个对象,它既是window对象的属性,也是document对象的属性,换句话说,window.location和document.location引用的是同一个对象
二 . 属性
hash:返回URI中的hash(#号跟零或多个字符)
host:返回服务器名称和端口号
hostname:返回不带端口号的服务器名称
href:返回当前加载页面的完整URL
pathname:返回URL中的目录和文件名
port:返回URL中指定的端口号
protocol:返回页面使用的协议
search:返回URL的查询字符串
三 . 查询字符串参数
虽然可以通过location.search得到从问号到URL末尾的所有内容,但却没办法逐个访问,因此可以像下面这样创建一个函数,用以解析每个字符串,然后返回包含所有参数的一个对象
function getQueryStringArgs() {
var qs = location.search.length>0? location.search.substring(1):"";
var args = {};
var items = qs.length?qs.split("&"):[];
var item = null;
var name = null;
var value = null;
for (var i = 0; i < items.length; i++) {
item = items[i].split("=");
name = decodeURIComponent(item[0]);
value = decodeURIComponent(items[1]);
if (name.length) {
args[name] = value;
}
}
}
四 . 位置操作
(1)assign():立即打开新URL并在浏览器的历史记录中生成一条记录
(2)replace():导航到新URL,但不会在历史记录中生成新纪录,即,用户不能返回到前一个页面
(3)reload():重新加载当前显示的页面
(完)