js中history对象常用方法

history对象是浏览器的一个内置对象,提供了关于浏览器历史记录的访问和操作方法。下面是一些常用的history对象属性和方法:

属性:

  • length:返回当前历史记录中的URL数量。

方法:

  • go(n):加载历史记录中的某个具体页面,参数n为正数表示向前跳转n个页面,负数表示向后跳转n个页面。
  • back():加载上一个页面,等同于go(-1)。
  • forward():加载下一个页面,等同于go(1)。
  • pushState(stateObj, title, url):向历史记录中添加一个新的状态,参数stateObj为一个自定义对象,title为页面标题,url为新的URL。该方法不会加载新的页面。
  • replaceState(stateObj, title, url):替换当前页面的状态,参数与pushState方法相同。同样不会加载新的页面。

注意:使用pushState和replaceState方法添加或替换状态时不会触发页面加载,需要配合监听popstate事件来进行相应的处理。

例如,可以使用以下代码获取历史记录中的URL数量:

console.log(history.length);

使用go方法向前后跳转页面:

history.go(-1); // 向后跳转一个页面
history.go(1); // 向前跳转一个页面

使用pushState方法添加新的状态:

history.pushState({page: 'home'}, 'Home', 'home.html');

使用replaceState方法替换当前状态:

history.replaceState({page: 'about'}, 'About', 'about.html');

以上是一些常用的history对象属性和方法,可以根据具体需求来选择使用。

  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值