我正在寻找使用HTML5历史API来解决深度链接问题与AJAX加载内容,但我很难下车。有没有人知道任何好的资源?
我想使用这个,因为它似乎是一个伟大的方式允许那些被发送的可能性链接可能没有JS打开。许多解决方案失败,当有人用JS发送链接到没有人。
我最初的研究似乎指向JS中的历史API和pushState方法。
解决方法
对于一个伟大的教程,Mozilla开发人员网络页面上的这项功能是你需要的:
https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history
不幸的是,HTML5 History API在所有HTML5浏览器中实现不同(使其不一致和错误),并且没有HTML4浏览器的后备。幸运的是,History.js为HTML5浏览器提供了交叉兼容性(确保所有HTML5浏览器按预期工作),并且可选地为HTML4浏览器提供散列备用(包括对数据,标题,pushState和replaceState功能的维护支持)。
您可以在这里阅读更多关于History.js:
https://github.com/browserstate/history.js
有关Hashbangs VS Hashes VS HTML5 History API的文章,请参阅:
https://github.com/browserstate/history.js/wiki/Intelligent-State-Handling