标签:
一、概述:
location 是 BOM 对象之一,它提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能。
事实上,location 对象是 window 对象的属性,也是 document 对象的属性;所以 window.location 和 document.location 等效。
二、属性:
alert(location); //获取当前的 URL
location.hash = ‘#1‘; //设置#后的字符串,并跳转 alert(location.hash); //获取#后的字符串 location.port = 8888; //设置端口号,并跳转 alert(location.port); //获取当前端口号, location.hostname = ‘Lee‘; //设置主机名,并跳转 alert(location.hostname); //获取当前主机名, location.pathname = ‘Lee‘; //设置当前路径,并跳转 alert(location.pathname); //获取当前路径, location.protocal = ‘ftp:‘; //设置协议,没有跳转 alert(location.protocol); //获取当前协议 location.search = ‘?id=5‘; //设置?后的字符串,并跳转 alert(location.search); //获取?后的字符串
location.href = ‘http://www.baidu.com‘; //设置跳转的 URL,并跳转 alert(location.href); //获取当前的 URL
在 Web 开发中,我们经常需要获取诸如?id=5&search=ok 这种类型的 URL 的键值对,那么通过 location,我们可以写一个函数,来一一获取。
function getArgs() { var args = []; //创建一个存放键值对的数组 var qs = location.search.length > 0 ? location.search.substring(1):‘‘; //去除?号 var item = null, name = null, value = null; var items = qs.split(‘&‘); //按&字符串拆分数组 //遍历 for (var i = 0; i < items.length; i++) { item = items[i].split(‘=‘); name = item[0]; value = item[1]; args[name] = value; //把键值对存放到数组中去 } return args; } var args = getArgs(); alert(args[‘id‘]); alert(args[‘search‘]);
三、方法
location.assign(‘http://www.baidu.com‘); //跳转到指定的 URL location.reload(); //最有效的重新加载,有可能从缓存加载 location.reload(true); //强制加载,从服务器源头重新加载 location.replace(‘http://www.baidu.com‘); //可以避免产生跳转前的历史记录,即不产生任何历史记录的跳转
JavaScript浏览器对象模型(BOM)之location对象
标签:
原文地址:http://www.cnblogs.com/LO-ME/p/3602893.html