2012-07-12 3 views
3

jQuery Mobile을 사용하여 내 웹 사이트의 모바일 버전을 만들고 캐시 된 페이지를 새로 고치는 것과 관련하여 질문이 있습니다. 헤더 바를 가지고 있으며 로그인 버튼이 있습니다. 사용자가 버튼을 클릭하고 성공적으로 로그인하면 로그인 버튼 (서버 측)을 로그 아웃 버튼으로 대체합니다. 브라우저의 뒤로 버튼을 누르면 로그인 버튼이 계속 표시됩니다. 로드 된 (캐시되지 않은) 페이지는 로그 아웃 버튼을 올바르게 표시합니다.jquery 모바일 새로 고침 헤더 막대

내가 이것을 누르면 페이지가 캐시에서 나오기 때문에 나는 이것을 추측하고 있습니까? 캐시 된 페이지에도 로그 아웃 버튼이 표시되도록 헤더 막대를 새로 고칠 수있는 방법이 있습니까? 로그인하기 전에 사용자가 방문한 페이지를 모르기 때문에 문제의 전체 페이지를 새로 고칠 수 있다고 생각하지 않습니다. 다시 & 앞으로 버튼 (브라우저)

1) 안 페이지 캐시 : 옵션들 중 하나입니다

답변

0

$.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.... 

    } 
} 
관련 문제