如何检测用户是否单击了“后退”按钮

当用户进入历史记录1时…我该如何检测到? 然后,提醒“用户点击回来!”

使用绑定(最好是jquery)

你一般不能(浏览器安全限制)。 您可以判断用户是否离开了页面(onbeforeunload,onunload fire),但除非您已将页面设置为允许,否则您无法分辨他们去了哪里。

HTML5引入了HTML5 History API; 在符合浏览器的情况下,如果用户导航回您网站上较早的“页面”, onpopstate事件将会触发。

尝试:

window.onbeforeunload = function (evt) { var message = 'Are you sure you want to leave?'; if (typeof evt == 'undefined') { evt = window.event; } if (evt) { evt.returnValue = message; } return message; } 
 window.onpopstate=function() { alert("Back/Forward clicked!"); } 

以下是检测后退按钮单击的步骤

  1. 在body $('body').on('mousedown' ,'on all li' );注册鼠标按下事件$('body').on('mousedown' ,'on all li' );

    2.当mousedown事件发生时,现在设置一个变量。

    3.当您的位置发生变化时,请检查此变量。

如果IF变量变为真,则意味着列表会以其他方式返回

这项工作在我的用例中。这个解决方案可以帮助其他人,因为它取决于应用程序设计

在您正在查看的页面上,您可以将这段代码添加到onLoad事件中,以将它们移回到它们所在的页面上。

 if(history.length>0)history.go(+1) 

如果你想要警报,那就去做吧

 if(history.length>0)alert("the user clicked back!")