⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

History API 浏览器历史

History API:pushState/replaceState修改URL不刷新(SPA路由基础)、popstate事件监听前进后退、state对象传递、history.back/forward/go、与hash路由对比(#hash vs /path) · 难度:入门 · +10XP

History API —— 无刷新改变URL

单页应用(SPA)的核心技术之一:用pushState改变URL但不刷新页面,用popstate监听浏览器的前进后退。

基本用法

// 改变URL + 添加历史记录
history.pushState({ page: 1 }, 'Page 1', '/page-1');
// 替换当前历史记录(不新增)
history.replaceState({ page: 2 }, 'Page 2', '/page-2');
// 监听后退/前进
window.addEventListener('popstate', event => {
  console.log('回到了:', event.state);
});
// 前进/后退/跳转
history.back();
history.forward();
history.go(-2);

动手练习

  1. 基础练习:做一个Tab切换——点击Tab改变URL hash,刷新后保持选中状态。
  2. 进阶应用:实现一个简单的SPA路由——根据URL渲染不同内容。
  3. 项目实战:在分页组件中用History API让分页状态可通过浏览器前进后退还原。
Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 231 篇
0 完成
🔥 0