javascript - 没有 hashbang 的动态 Web 应用程序 #!

标签 javascript html google-chrome single-page-application hashbang

Google map 和 Mixcloud 等 Web 应用程序如何在不使用 hashbang(也称为 #!)的情况下更新其 url?

例如,在 Google map 中滑动 View 时,请注意 URL 中 @ 符号后的坐标。或者请注意,在点击某些链接时音乐会继续播放。

我正在寻找一种编程方式来实现相同的功能,我也想知道它是如何工作的。

最佳答案

HTML5 history API 是一种通过脚本操作浏览器历史记录的标准化方法。这个 API 的一部分——浏览历史——在以前的 HTML 版本中已经可用。 HTML5 中的新部分包括一种将条目添加到浏览器历史记录的方法,可以明显更改浏览器地址栏中的 URL(不触发页面刷新),以及当用户从堆栈中删除这些条目时触发的事件按浏览器的后退按钮。这意味着浏览器地址栏中的 URL 可以继续作为当前资源的唯一标识符发挥作用,即使在从未执行完整页面刷新的脚本密集型应用程序中也是如此。

来源:http://diveintohtml5.info/history.html

关于javascript - 没有 hashbang 的动态 Web 应用程序 #!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30537835/

相关文章:

android - 如何在模拟安卓设备(AVD)上使用 Web Inspector

javascript - Chrome 中全屏显示的白色底部和顶部栏

javascript - 如何防止外部 CSS 添加和覆盖 ReactJS 组件样式

jquery - 具有动态间隔文本的菜单以覆盖整个宽度

html - 如何让 nav 和 footer 超过 1000px?

google-chrome - Chrome 中的自定义域

javascript - 使用 javascript 调用按键

javascript - Div 作为模式 - javascript

javascript - jQuery 回调卡住

html - 父 DIV 在转换子 img 时保留大小