在 Firefox 和 IE 中禁用/禁用后退按钮的替代方法

发布于 2024-11-06 02:32:28 字数 527 浏览 0 评论 0原文

我们的申请出于多种原因禁止返回。 基本上因为这就是我们的应用程序的工作方式(JSF 使用facelets 作为 GUI) 您始终必须进入欢迎站点,一旦您选择了应用程序流程,您只能在告诉应用程序(例如按按钮)时离开/中止。如果您只是浏览,例如在地址栏中输入“example.com”,您的流程状态将被保存,一旦您重新登录,您就可以继续工作。只有当像这样专门设计带有“后退”提交按钮时才可能返回。 当然,用户不断按下“后退”按钮(我也会这样做),并且他们不断收到“错误:会话不同步”。这是一个学习过程,几年前我们只是禁用了后退按钮以使事情变得清晰。遗憾的是,这不再受支持。 因此,与其以艰难的方式教导用户并强迫他重新登录,我是否缺少一些好的替代方案?

我发现这个链接应该提供 3 种方法来禁用后退按钮 - 但实际上它只是进一步证实了这样一个事实:不可能以半好的方式做到这一点。

Our application forbids going back for several reasons.
Basically because that's just how our application works (JSF with facelets as GUI)
You always have to enter on the welcome site, once you chose an application-flow you can only leave / abort when you tell the application (e.g. press a button). If you just browse away e.g. enter "example.com" in the address bar the state of your flow gets saved and once you relogin, you can resume the work. Going back is only possible when it was specifically designed like this with a 'back' submit - button.
Of course users keep pressing the 'back' button (i would do so as well) and they keep getting 'error: session out of synch'. This is a learning process and a couple years ago we just disabled the back-button to make things clear. Sadly this is no longer supported.
So instead of teaching the user the hard way and forcing him to relogin, are there some good alternatives I'm missing?

i found this link which should offer 3 methods to disable the back button - but in reality it just further confirms the fact that it is impossible to do it in a semi-nice way.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

不必了 2024-11-13 02:32:28

当用户尝试转到上一页时,您可以将他重定向到他应该所在的页面,换句话说,捕获“不同步”并重定向他

when the user tries to go to a previous page you can redirect him to the page he should be at in other words catch the "out of sync" and redirect him

场罚期间 2024-11-13 02:32:28

您可能会在这里找到可行的解决方案 我该如何通过 JavaScript 将条目插入浏览历史记录
通过在浏览器的历史记录中插入一个额外的步骤(可能是带有查询字符串参数的当前页面的链接,这会向用户显示一个漂亮的大红框消息),或者您可以尝试将事件处理程序附加到 OnBeforeUnload 事件,以便用户尝试离开页面时收到确认对话框(您希望在单击提交按钮时删除处理程序)。

You might find a workable solution here How do I insert an entry into browsing history via JavaScript
by inserting an extra step into the browser's history (perhaps a link to the current page with query string parameters that result in a nice big red box message to the user), or you could try attaching an event handler to the OnBeforeUnload event so the user gets a confirmation dialog when trying to leave the page (you'd want to remove the handler when the submit button was clicked).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文