BOM之history对象

一 作用

history对象表示当前窗口首次使用以来用户的导航历史记录

二 使用场景

场景一:导航

方法:

go()

作用:可以在用户历史记录中沿任何方向导航,可以前进,也可以后退

参数:一个整数,表示前进或后退多少步(负值为后退,正值为前进)/旧版本 可以传字符串

history.go(-1);//后退一页
history.go(1);//前进一页
history.go(2);//前进两页


// 旧版本浏览器
history.go("wrox.com") //导航到最近的wrox.com页面

back()

history.back()  后退一页

forward()

history.forward()  前进一页

属性:

length  表示历史记录中有多个条目

程序实现:确定用户浏览器的起点是不是你的页面

if(history.length == 1) {
   
    //用户窗口中的第一个页面

}

场景二:历史状态管理API

  • haschange():在页面URL的散列变化时被触发
  • pushState():
    • 参数:state对象、新状态的标题、(可选的)相对URL
    • 会创建新的历史记录
let stateObject = { foo: "bar" }

history.pushState(stateObject, "MyTitle", "baz.html");

更新状态不会创建新历史记录,只会覆盖当前状态

猜你喜欢

转载自blog.csdn.net/xiaoyangzhu/article/details/121700523