pjax
pjax = PushState + ajax
pjax 不能在本地测试,因为通过 xhttprequest 对本地文件发起的访问请求,会因 CORS 策略而受到屏蔽。
jquery-pjax
- 依赖 jQuery1.8+
- 只能替换一个元素
- 需要配置服务端,检测 request header 是否包含 X-PJAX,以保证每次触发 pjax 返回的页面都只有需要替换的部分,否则就会加载整个页面
MoOx/pjax
- 纯 JavaScript,无依赖
- 可以替换多个元素
- 不要求配置服务端,既可以接受完整页面内容响应,也可以接受部分内容的响应