【问题标题】:Javascript history.pushStateJavascript history.pushState
【发布时间】:2012-04-04 20:08:06
【问题描述】:

我通过 stackoverflow 找到了 history.pushState() 的示例,但我不明白每件事的作用。这就是我所拥有的

var stateObj = {
    foo: "bar"
};
history.pushStates(stateObj, "page 2", "page2.html");

那么任何人都可以解释 stateObj 包含什么以及此脚本中的“第 2 页”是什么?为什么对象有 foo: "bar"?

提前致谢。

【问题讨论】:

    标签: javascript jquery history


    【解决方案1】:

    此链接可能有用:

    https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history#The_pushState%28%29.C2.A0method

    示例中的第一个参数stateObj 是一个任意上下文对象,包含您想要的任何内容。当用户访问不同的页面,然后使用浏览器的“后退”按钮导航回您的页面时,就会访问它。有关更多信息,请参阅popState 事件。

    第二个参数当前未使用;建议在这里传递空字符串。

    最后一个参数是与上下文对象关联的 URL。它不会改变当前页面的位置。

    【讨论】:

    • 仅供参考,这不是 jQuery 特有的。
    • 那么什么可以代替foo: "bar",它在那里有什么作用?
    • 您可能想要存储的任何数据,以便稍后在 popstate 事件期间访问。
    • 这取决于您的应用程序!把一些重要的变量放在那里,这样如果用户离开你的页面然后又回到它,他们可以从他们离开的地方继续。
    【解决方案2】:

    【讨论】:

    • 请尝试扩展您的答案。
    • @vcsjones 怎么样? OP 基本上要求提供我链接到的文档。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-12
    • 2017-03-01
    • 2012-12-29
    • 2012-11-28
    相关资源
    最近更新 更多