【问题标题】:One-page HTML5 Web Application Should Not Have A Back Button?一页 HTML5 Web 应用程序不应该有后退按钮?
【发布时间】:2012-02-01 21:16:31
【问题描述】:

由于我正在开发一个类似于桌面应用程序的 HTML5 Web 应用程序,我想知道浏览器的后退按钮是否应该可用。

首先,在我的应用程序中。由于设计接近桌面应用,我从不更改 url,所以完全没有历史记录,它是一个单页应用程序。

其次,在我的应用程序之外。当她点击历史记录时,我倾向于询问用户是否想离开应用程序,因为正常行为是转到以前的 URL,我认为我不应该阻止。

你怎么看?这种做法合理吗?

谢谢!


在cmets之后:

  • 当浏览器页面上有后退按钮时,该按钮应正常工作。我同意。

  • 但是如果没有后退按钮,那么它可以使 Web 应用程序看起来更像一个应用程序(而不像一个网站)。例如,Chrome 中的 Google 应用程序(例如邮件、日历)在专用窗口中打开时不会显示任何后退按钮。

我将更深入地研究在 chrome 上运行的单独窗口中创建 Web 应用程序的 google 解决方案。我想知道它是否可以概括。


找到的示例:

https://www.draw.io/ - 返回时,打开一个对话框,要求用户选择离开应用程序。我觉得这很整洁。

【问题讨论】:

  • 如果视图发生变化,那么用户会期望返回按钮将他们带回之前的视图。破坏用户期望的行为是让他们不开心的好方法。现代浏览器为此提供了great API
  • 你提到你会问用户什么时候点击。但是,(纯粹从个人经验说)我发现人们通常不阅读它们并且经常觉得它们很烦人。你能避开它们吗?如果用户不小心回击,是否有可能让用户回到他们的状态,然后向前点击以返回您的应用?
  • @Jordan:你应该让你的回复成为一个答案,这样它才能被投票/接受。

标签: html web-applications


【解决方案1】:

(根据@NathanArthur 的建议,将其发布为答案。)

如果视图发生变化,那么用户会期望返回按钮将他们带回到上一个视图。破坏用户期望的行为是让他们不开心的好方法。现代浏览器有一个great API for this

【讨论】:

  • 如果您预计很多用户会在浏览器之外使用您的应用程序(如您提到的 Chrome 应用程序或 Fluid),那么您应该考虑这些用户的需求。通常原生应用程序(尤其是在屏幕空间有限的移动设备上)在 UI 中有一个“后退”按钮——这是对用户的直观隐喻。用户会想要“回去”吗?只是需要考虑的事情。
  • “如果视图改变......” - 这正是非常非常难以定义的部分。什么是“观点改变”?更改选项卡控件中的选项卡?更改表格视图的过滤器?展开/折叠手风琴或树节点?如果你在屏幕上有多个这样的东西并且想要支持后退按钮,它会变得更加复杂。如果用户在基于组件的系统中组装视图,情况会变得更糟。
  • 你说得对,@DanielPaull。解决此类问题的最佳方法是进行可用性测试。
【解决方案2】:

为什么,不将国家推向历史?我真的会向你推荐这个,因为你应该尽量不要破坏用户的正常行为,如果他们不小心点击了某些东西,他们总是会尝试按下那个按钮。你可以使用History.js

或者有理由不使用历史记录?

【讨论】:

    猜你喜欢
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-27
    • 1970-01-01
    相关资源
    最近更新 更多