看到一个叫 Product Hunt 的网站,点击任何一篇文章,url 都会变化,但页面并没有刷新,而且访问文章的网址,内容会展开,这是怎么实现的?
认证高级PHP讲师
原理是利用HTML5引入的history.pushState()和history.replaceState()方法.
HTML5
history.pushState()
history.replaceState()
HTML5 Demo: HTML5 History APIManipulating History for Fun & Profit
Github项目: browserstate/history.js
pjax
这个实现ajax和history api的结合
ie下会有问题吧
ajax 局部刷新
可以用hash
移动端兼容还不太好
使用 hash 吧 window.location.hash
单页面应用的框架都有吧,就是一楼说的 history.pushState()和history.replaceState()
原理是利用
HTML5
引入的history.pushState()
和history.replaceState()
方法.HTML5 Demo: HTML5 History API
Manipulating History for Fun & Profit
Github项目: browserstate/history.js
pjax
这个实现ajax和history api的结合
ie下会有问题吧
ajax 局部刷新
可以用hash
移动端兼容还不太好
使用 hash 吧 window.location.hash
单页面应用的框架都有吧,就是一楼说的 history.pushState()和history.replaceState()