jQuery-pjax vs history.js在点击时加载特定内容

Ada*_*han 11 ajax jquery html5

我需要ajaxify我的网站,例如加载微调器或某些内容,以便在单击链接时在页面中呈现特定内容.

我找到了2个好的jQuery插件.

他们的主要区别是什么?他们似乎在做同样的工作.好吧,也许一个使用ajax然后返回html(pjax),一个使用所谓的html5推送状态或其他东西.

还有另一种方法吗?(更简单或只使用jQuery)我认为使用这些插件中的任何一个都太过分了(但我不确定是否有更简单的方法).

bal*_*ton 26

History.js的作者在这里.

  • History.js非常低级,只专注于为HTML5 History API提供跨浏览器兼容的界面
  • PJAX是高级的,利用HTML5 History API提供一个界面,使用这两种技术使用AJAX升级您的网站.

因此,您可以让PJAX使用History.js,以便它支持跨浏览器.其实有一个关于这个请求在这里.

虽然这并不意味着History.js在AJAX方面离开了你自己,它确实为你提供了一个高级的样本,可以在这里使用带有AJAX的History.js,你可以在这里找到更多关于如何创建它的信息.基本上,要点和PJAX做同样的事情,但他们以不同的方式去做.

关于更简单,History.js是您可以获得的最低级基本最简单的东西,它将确保HTML5 History API在所有浏览器中都能运行 - 这就是它的目标,尽可能低级别和紧凑,以便其他东西可以按照他们想要的方式扩展 - 例如PJAX或Gist.

  • +1谢谢@balupton,假设我选择了这个URL"http://history.js/demo/?state = 3`,并将其传递给拥有HTML 4浏览器的人.他会被重定向到`http://history.js/demo/#?state = 3`? (2认同)