Pjax: PushState + Ajax

pjax

pjax = PushState + ajax

pjax 不能在本地测试,因为通过 xhttprequest 对本地文件发起的访问请求,会因 CORS 策略而受到屏蔽。

jquery-pjax

  • 依赖 jQuery1.8+
  • 只能替换一个元素
  • 需要配置服务端,检测 request header 是否包含 X-PJAX,以保证每次触发 pjax 返回的页面都只有需要替换的部分,否则就会加载整个页面

MoOx/pjax

  • 纯 JavaScript,无依赖
  • 可以替换多个元素
  • 不要求配置服务端,既可以接受完整页面内容响应,也可以接受部分内容的响应