【发布时间】:2023-03-16 11:15:01
【问题描述】:
我刚刚发现了pjax,我觉得它非常棒。如果我理解正确的话,它是 AJAX,但没有它的问题(完全可降解,使用它时页面的 URL 和标题会发生变化,与搜索机器人兼容......)。
但我很好奇它是如何工作的?我们如何更改浏览器中的 URL,而不需要更改页面...我在某处看到您需要 Firefox 4,那是一个新的“网络”功能吗?
【问题讨论】:
标签: javascript ajax
我刚刚发现了pjax,我觉得它非常棒。如果我理解正确的话,它是 AJAX,但没有它的问题(完全可降解,使用它时页面的 URL 和标题会发生变化,与搜索机器人兼容......)。
但我很好奇它是如何工作的?我们如何更改浏览器中的 URL,而不需要更改页面...我在某处看到您需要 Firefox 4,那是一个新的“网络”功能吗?
【问题讨论】:
标签: javascript ajax
它只是“$.ajax()”的包装。它使用新的“pushState”和“replaceState”方法来操作历史记录。
还有see this SO question too,尤其是指向History.js的链接。
edit — 请注意,我写“只是一个包装器”并不是要贬低 pjax 插件。我只是说它不是一些激进的新功能。它仍然是 XMLHttpRequest。
【讨论】: