【问题标题】:jquery: Did the user press the back button?jquery:用户是否按下后退按钮?
【发布时间】:2014-03-27 19:14:00
【问题描述】:

是否有可以返回用于导航到页面的方法的 jquery 函数?我正在专门寻找方法来判断用户是否按下了后退按钮。

【问题讨论】:

  • "将其他内容加载到我的网页中" 这是 onload 事件的语法,而不是 ajax 包装加载方法。我们可以通过什么方式在线检查您的问题?
  • "这主要与表单和重新填充其中的信息有关。"所以我猜你提交表格,使用默认行为,对吧? AFAIK,一些浏览器会将所有数据保留在输入表单中,而另一些则不会。现在它与 window 对象的 onload 事件有什么关系?
  • 看起来你的问题来自超时或任何你用来延迟逻辑的东西。再一次,没有看到你在做什么,我想没有人可以帮助你更多......并且请注意,一旦页面被卸载,关于这个旧页面就不会在后台执行更多脚本,所以“除非点击后退按钮页面加载后 10 秒内”是错误的猜测
  • 我问错问题了...让我改一下
  • 根据您的编辑,没有!但也许有一些特定的解决方法可以得到你想要的行为。我了解您不想共享您的实际代码,但您应该这样做以便让别人能够检查您的代码中的问题。顺便说一句,您可以使用持久存储作为 cookie/本地/会话存储来检查用户在过去 x 分钟内是否已经完成了 ajax 请求等...

标签: jquery refresh


【解决方案1】:

你也可以试试:

$(window).bind("unload", function() { /* .... */ });

$(window).unload(function(){ /* ... */});

【讨论】:

  • 当窗口关闭或导航离开时会发生这种情况吗?
  • @Hoytman 它应该在用户离开当前页面时被触发,通常更好的是使用 onbeforeunload。现在我不明白这如何解决您的问题,也许安东尼可以详细说明一下。但同样,您能否提供一个问题示例,因为使用后退按钮,上一页不应删除任何内容。那你有什么问题???
  • @Hoytman 听起来您需要有这样的主体: 当您使用卸载时。来源:stackoverflow.com/questions/158319/…
  • 我用更好的描述更新了问题,但我怀疑是否有简单的解决方法。
  • @A. Wolff 确实是,但我不认为内容已经过时
猜你喜欢
  • 2023-04-04
  • 2013-07-11
  • 2013-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-11
相关资源
最近更新 更多