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