检测用户何时按下返回按钮

Detecting when user hits back button

本文关键字:返回 按钮 何时按 用户 检测      更新时间:2023-09-26

我正在尝试检测用户何时点击浏览器中的"后退"按钮。

当点击链接然后返回时,什么也没发生:

<script src="http://code.jquery.com/jquery-latest.min.js"
    type="text/javascript"></script>
<script>
$( window ).on( "navigate", function( event, data ) {
  console.log( data.state );
});
</script>
<a href="http://www.google.com">Link</a>

我正期待日志中的消息。

当用户选中一些复选框,然后转到另一个页面,然后返回时,我希望重置表单,使所有复选框都为空。

这不起作用,因为您的javascript没有在google.com上运行。如果您使用javascript在页面上并单击后退按钮,您可能会在一瞬间看到console.log消息,但加载上一页的浏览器和加载消息的控制台之间的竞争将决定您是否看到该消息。

我也遇到了同样的问题。我发现最好的解决方案是在最初的帖子中使用校验和。然后你可以比较校验和,看看它以前是否被使用过,如果是,那么你可以重置所有内容。