1

我有点棘手。

我正在使用 jQuery mobile 1.1.1 开发一个移动网站。它是一个纯 javascript html5 实现。

解剖结构如下:

  • 1 个 HTML 页面被称为index.html包含完整的 HTML 结构和标题,所有包括(javascript/css 等)、正文等。此页面重定向$.mobile.changePage('login.hml')到登录站点。

  • X 子站点仅包含<div data-role="page" data-theme="a" id="x" data-title="x">站点特定的 html/javascript 代码。

到目前为止,这工作正常。唯一的问题是,当我刷新页面时(F5例如),刷新后我总是被重定向到登录站点。


例子:

我在以下网站(网址)上:

http://mysite/mobile/web/#/mobile/web/list.html

然后,我按下F5刷新页面。

刷新完成,然后我被重定向到:

http://mysite/mobile/web/#/mobile/web/login.html

我怎样才能防止这种行为?

4

1 回答 1

0

刷新页面时,您的浏览器会将 URL 解释为您要显示的页面,http://mysite/mobile/web/这就是您打开的原因index.html,它会将您重定向到login.html.

有 2 个可能的修复方法:

  1. 修改您的重定向,以便您解析目标 URL 并识别预期位置(在您的示例中,# 之后的所有内容/mobile/web/list.html)并重定向到此给定页面。您当然应该首先检查您的用户是否正确登录,以便在必要时重定向到 login.html。

  2. 您还可以修改 list.html 页面使用的 URL,以便它正确使用http://mysite/mobile/web/list.html(如果确实是存储文件的位置)。我不赞成这种方法,因为它还需要您在此页面中添加所有正确的标题信息,而且我觉得通过为您的站点设置一个入口点来动态处理目标更容易符合 JQuery Mobile 精神你的用户

于 2012-09-05T13:47:54.457 回答