jQuery Mobile(至少 1.1)提供了一个不错的功能,即“返回”按钮。根据文档中的“后退按钮链接”一章,添加data-rel="back"
链接/按钮将模拟与 Web 浏览器后退按钮完全相同的功能。也就是说,返回到用户 Web 浏览器中的上一页。
此功能很棒(并且有效),但是在一个用例中,您没有获得移动应用程序的正确行为。
所以你有一个网站。这是jquery手机。
- 页面 A 是登陆页面
- 页面 B 是页面 A 的子页面
- 页面 C 是页面 B的子页面,也是页面 A 的子页面
- 现在 Bob 将页面 C 的 URL 提供给 Alice
- Alice 转到页面 C 并使用后退按钮,因为她想结帐站点的其余部分
- Alice 的网络浏览器会返回到她之前所在的页面(可能是 stackoverflow!)
- 爱丽丝不明白为什么她被重定向到另一个网站,在她的痛苦中,她把手机扔进了湖里。
由于有两种方式可以转到页面 C,因此开发人员放置了一个后退按钮,因为在名义上的用例中,每个用户从页面 A 进入并浏览,页面 C 上的后退按钮按需要工作;也就是说,它要么返回页面 A,要么返回页面 B。但是 Alice 和 Bob 在这里,返回按钮会转到一个完全不同的网站!
我希望这一切都清楚:)
所以我认为的解决方案是:
- 如果用户历史堆栈中的前一个网站在同一个域上:使用它返回
- 如果不是:使用
href
属性值作为导航规则。
所以...问题:jqm 支持吗?我错过了文档中的某些内容吗?它是否以某种方式实施?我需要自己实施吗?