我有点处于困境。
我正在开发一个使用jQuery mobile 1.1.1的移动网站。它是一个纯粹的javascript html5实现。
解剖学如下:
1个名为index.html
的HTML页面,其中包含带标题的完整HTML结构,包括(javascript / css等),正文等。此页面通过$.mobile.changePage('login.hml')
重定向到登录站点。< / p>
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
我该如何防止这种行为?
答案 0 :(得分:0)
刷新页面时,您的浏览器会将网址解释为您要显示为http://mysite/mobile/web/
的网页,这就是您打开index.html
的原因,这会将您重定向到login.html
。
有两种可能的解决方法:
修改您的重定向,以便您解析目标网址并确定目标位置(在示例/mobile/web/list.html
中#后面的所有内容)并重定向到此给定页面。
您当然应首先检查您的用户是否已正确登录,以便在必要时重定向到login.html。
您还可以修改list.html页面使用的网址,以便正确使用http://mysite/mobile/web/list.html
(如果确实存储了您的文件)。我不赞成这种方法,因为它会要求你在这个页面中添加所有正确的头信息,我觉得通过对你的站点有一个入口点,动态处理目的地,更容易符合JQuery Mobile的精神。您的用户