有人可以向我解释一下状态吗?
例如,使用history.js插件。
History.pushState({state:1}, "State 1", "?state=1"); // logs {state:1}, "State 1", "?state=1"
我理解最后一个参数,因为它是推送到地址栏的 URL,但我不知道前两个。了解这些将帮助我将 history.js 实施到我的网站中,因为我在后退/前进导航方面遇到了麻烦。
在Mozilla 开发网站上,它说:
state object — state 对象是一个 JavaScript 对象,它与 pushState() 创建的新历史条目相关联。每当用户导航到新状态时,都会触发一个 popstate 事件,并且该事件的 state 属性包含历史条目的 state 对象的副本。状态对象可以是任何可以序列化的对象。因为 Firefox 将状态对象保存到用户的磁盘,以便在用户重新启动浏览器后可以恢复它们,所以我们对状态对象的序列化表示施加了 640k 个字符的大小限制。如果将序列化表示大于此的状态对象传递给 pushState(),则该方法将抛出异常。如果您需要更多空间,建议您使用 sessionStorage 和/或 localStorage。
状态只是使用 AJAX 加载的代码的副本吗?或者它只是该代码的表示,因此可以调用它?
对此的任何见解表示赞赏!