说说 JavaScript BOM 的 history 对象

history 对象保存着用户上网的历史记录,一打开窗口就会开始记录。history 对象是 window 对象的属性,所以每一个 window 对象都有一个 history 对象与它对应。

使用 go() 方法可以在用户的历史记录中任意跳转,可以向前,也可以向后。

go(num) :

名称说明
num负数表示向后跳转(后退),整数表示向前跳转(前进)
history.go(-1);//后退一页

history.go(1);//前进一页

history.go(2);//前进两页

还可以传递字符串,go(str):

名称说明
str跳转到历史记录中包含该字符串的第一个记录,可能后退,也可能前进,具体要看哪一个位置离得最近。如果没有找到,就什么都不做。
history.go(“xxx.com”);//跳转到最近的 xxx.com 

也可以使用简写的方法:

  • back(),后退
  • forward(),前进

history 对象有一个 length 属性,它保存着所有历史记录的数量。对于加载到窗口、标签页或者框架中的第一个页面来说,length 为 0。因此可以这样测试用户是否一开始就加载了我们的应用页面:

if (history.length == 0){
    ...
}

注意: 当页面的 URL 发生改变时,会生成一条历史记录。在 IE8 以及更高版本、Opera、Firefox、Safari3 以及更高版本、还有 Chrome 中,当 URL 中的 hash 发生变化时,也会生成一条历史记录。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值