常见方法
1. history.back(): 导航到浏览器历史记录中的上一个页面。
history.back();
2. history.forward(): 导航到浏览器历史记录中的下一个页面。
history.forward();
3. history.go(n): 导航到浏览器历史记录中的特定页面,n 参数可以是正数(前进)或负数(后退)。
history.go(-2); // 后退两个页面
history.go(3); // 前进三个页面
4. history.pushState(state, title, url): 向浏览器历史记录中添加一个新的状态,但不导航到新的页面。state 是一个表示新状态的对象,title 是一个不起作用的参数(可以设置为 null),url 是新状态的 URL。
history.pushState({ page: 1 }, "Title", "/page-1");
5. history.replaceState(state, title, url): 用新的状态替换当前的历史记录条目,但不导航到新的页面。参数和用法与 pushState() 相似。
history.replaceState({ page: 2 }, "New Title", "/page-2");
例子
// 后退一个页面
history.back();
// 前进两个页面
history.go(2);
// 添加新的历史记录条目
history.pushState({ page: 3 }, "Page 3", "/page-3");
// 替换当前历史记录条目
history.replaceState({ page: 4 }, "Page 4", "/page-4");
通过使用 History 对象,开发者可以在不刷新页面的情况下实现前进、后退以及修改浏览器地址栏的功能。这对于构建单页面应用(SPA)等现代 Web 应用程序是非常有用的。
转载请注明出处:http://www.pingtaimeng.com/article/detail/4370/JavaScript