浏览器后退按钮的痛苦

时间:2010-02-25 17:29:26

标签: javascript browser

有没有办法使用JavaScript(或其他东西)来检测/阻止用户点击浏览器后退/前进按钮?

我想知道处理这个问题的常见做法。这真的很痛苦,特别是在订购等工作流程中。

5 个答案:

答案 0 :(得分:13)

实际上阻止用户使用后退或前进按钮是糟糕的可用性并且会使用户受挫 - 直言不讳,它将开发人员问题传递给用户。

我认为Post/Redirect/Get pattern与javascript中的window.onbeforeunload相结合(如SO用途)对您的情况非常有用。

答案 1 :(得分:3)

调查历史经理。像这样的东西:

http://code.google.com/p/reallysimplehistory/

你可以让后退按钮实际上做一些有用的事情,比如回到之前的(有效)状态,如果可能的话。

答案 2 :(得分:1)

如果您构建一个单页Web应用程序(意味着加载了单个页面,然后所有更改都在该页面中使用Javascript动态完成),您可以选择:

当用户点击后退按钮时,您离开页面,因为它是唯一的页面,您可以通过事件window.onbeforeunload

警告用户

然后,如果您需要/想要更多地控制后退/下一步按钮的行为,您可以添加一个哈希(#)键来处理它。
请参阅我对该问题的回答:Change the get parameters in the address bar in jquery

答案 3 :(得分:0)

没有这个是不可能的,你不能篡夺用户的浏览体验,但希望应该有一个解决这个问题....

答案 4 :(得分:0)

据我所知,不是,但您可以使用window.onbeforeunload事件来警告用户在数据丢失风险时不要离开。请记住,这对Opera不起作用。