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对象属性和方法,可以根据具体需求来选择使用。

你可能感兴趣的:(javascript,前端,开发语言)