当用户点击浏览器后退按钮时提醒用户 – 有充分的理由

我知道这与禁忌有关,请不要回答“你永远不应该这样做”,等等。

我在向导中有一个很长的表单,有些用户习惯使用浏览器的后退和前进按钮,而不是表单向导上的“后退”和“下一步”按钮。 如果他们点击浏览器的后退按钮,他们将丢失所有表单数据(这是一个痛苦的屁股,因为表单太长了)。

是否有可能显示何时会有“带我离开这里”按钮和“取消”按钮,所以如果他们点击取消它会取消后退按钮的function?

您应该从onbeforeunload事件返回一条消息,如下所示:

 window.onbeforeunload = function() { return "Leaving this page will reset the wizard"; }; 

请注意,即使在向导完成后,当用户出于任何原因离开页面时,也会触发此事件。
您应该在向导完成时设置一个标志,而不是返回消息。

您可以使用jQuery BBQ插件重写下一个/上一个按钮的function,使其在整个“向导”中转换更加无缝

http://benalman.com/projects/jquery-bbq-plugin/

虽然设置有点复杂,但如果您正在寻找相同的function,请查看提供的示例。

您可能需要重构代码以适应,并且需要数小时。