10

我一直在研究利用 HTML5 的历史 API 又名 psuhState 的最佳方法,并为 HTML4 浏览器提供适当的后备。

Github 使用 history api 进行树浏览(以下链接只是一个示例,不是 github 使用的库):

https://github.com/browserstate/History.js/

我不知道他们如何为 Firefox 3.5 等 HTML4 浏览器处理此功能?

我特别查看了history.js(上面链接)来处理这类事情。但它需要我想避免的 HTML4 浏览器的 hash # 实现。

如果您访问 Github 并使用 HTML4 浏览器浏览目录树,它看起来与 HTML5 浏览器相同(即 url 状态)。

如果我在 FF3.5 中禁用 JavaScript,之前的 URL 如下所示:

https://github.com/browserstate/history.js/tree/master/tests

现在看起来像这样:

https://github.com/browserstate/history.js/tree/a32e91aa1fe5909a29abb690a37f6c129e98068e/tests

有什么想法吗?

4

2 回答 2

15

GitHub 使用http://pjax.heroku.com/

对于不支持 pushState 的浏览器,它只会降级为正常的、无聊的整页加载行为。

于 2011-07-03T08:22:01.903 回答
7

来自未来的响应式网页设计是来自 GitHub 的设计师 Kyle Neath 的 96 张幻灯片演示,它可能会对您有所帮助。

推送状态。替换状态。哈希棒。阿贾克斯。PJAX。甜菜。熊。太空堡垒卡拉狄加。

响应式网页设计不仅仅是屏幕大小。这个演讲是关于 GitHub 如何处理链接、url 栏、部分页面更新,并解释了为什么我认为 HTML5 历史 API 是自 Firebug 以来发生在前端开发中最重要的事情。

于 2011-08-07T01:43:41.813 回答