3

我正在使用 jQuery Mobile 制作我的网站的移动版本,并且对刷新缓存页面有疑问。我有一个标题栏,并在上面放置了一个登录按钮。如果用户单击按钮并成功登录,我将登录按钮(在服务器端)替换为注销按钮。问题是,如果我按下浏览器后退按钮,登录按钮仍然显示。随后加载的(非缓存)页面正确显示注销按钮。

我假设这是因为当我按下时,页面来自缓存?有没有办法刷新标题栏,以便在缓存页面上也显示注销按钮?我认为我不能只刷新有问题的整个页面,因为我不知道用户在登录之前访问了哪些页面。

4

1 回答 1

0

有多种选择:

1)禁用页面缓存(浏览器后退和前进按钮):

$.mobile.hashListeningEnabled = false; 

2)创建事件捕获当前页面名称,然后操纵标题:(类似于...):

$("#PageName").live("pagebeforeshow", function (event, data) {

    // get current URL
    var pageName = $(location).attr("href").split("#")[1];

    // manipulate by the page name
    if(pageName == XXX){

       Header....

    }
}
于 2012-12-25T06:49:14.357 回答