简单介绍:
说明: location对象是window属性,也是document属性所以它提供了与当前窗口中加载的文档有关信息和导航功能,
属性名称
属性说明
hash
返回url中的hash(#后跟零或多个字符),如果不包含散列则返回空字符串
host
返回服务器名称和端口号
hostname
返回不带端口号的服务器名称
href
返回当前加载页面的完整url与location.toString()一样
pathname
返回url中的目录或文件名
port
返回url中服务器的端口号
protocol
返回页面使用的协议,通常是http或https
search
返回url的查询字符串,这个字符串以问号开头
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// 解析查询字符串
function
getQueryStringArgs(){
// 去掉查询字符串前面的?符号
var
qs = location.search?location.search.substring(1):``''
// 判断是否有查询字符串如果有就切割,否则返回空数组
var
qsItems = qs.length?qs.split(``'&'``):[]
var
args = {}
// 遍历数组将键值对放入args对象
qsItems.map(``function``(item, index, qsItems){
var
res = item.split(``'='``)
// 解码可能被编码过的查询字符串
var
key = decodeURIComponent(itemArr[0]),
val = decodeURIComponent(itemArr[1])
if``(key){
args[key] = val
}
})
// 返回包含查询字符串的字母量对象
return
args
}
var
args = getQueryStringArgs()
for``(``var
key
in
args){
console.log(key +
' -> '
+ args[key])
}
位置相关:
方法名称
方法说明
assign(url)
当前页面打开新的url,并在浏览器历史记录中生成一条记录,与设置window.location和location.href效果一样,可通过后退返回上一个页面
replace(url)
当前页面替换为新的url页面内容,不在浏览器历史记录中生成记录,所以无法通过后腿返回被替换前的页面
reload(force)
如果fore为true则尝试强制从服务器刷新当前页面,如果为false则从尝试从缓存中刷新当前页面
1
2
3
4
5
6
7
8
// 1秒后页面被替换为百度
setTimeout(``function``(){
location.replace(``'http://www.baidu.com'``)
},1000)
// 间歇性每2秒刷新下网页
setInterval(``function``(){
location.reload(``true``)
}, 2000)
说明: 位于reload()调用之后的代码可能会也可能不执行,这取决于网络延迟或系统资源等因素,所以,最好将reload()放在代码的最后一行
登录乐搏学院官网http://www.learnbo.com/
或关注我们的官方微博微信,还有更多惊喜哦~
本文出自 “满满李 - 运维开发之路” 博客,请务必保留此出处http://xmdevops.blog.51cto.com/11144840/1853795