2013-08-30 87 views
0

我遇到了一個有趣的問題,我不知道如何解決它。我在我的主頁上保留了一個隱藏的值,用於跟蹤頁面上加載的事件。頁面加載後事件位置得到更新。當離開頁面導航,然後點擊瀏覽器後退按鈕時,會看到前一個事件編號。如果我點擊一個鏈接,加載主頁直接在事件位置被複位(預期)瀏覽器返回按鈕導致隱藏字段的問題

我的HTML:

<input type="hidden" id="event_num" value="0"> 

我的JavaScript調用來獲取/設置event_num值:

function getRecentEvents() { 

    var event_pos = $('#event_num').val(); 
    //console.log("POS: " + event_pos); 

    $.getJSON("functions/get_events.php", { f: 'get_events', event_pos: event_pos, limit: limit}, function(data) { 

     if (data.events.length > 0) { 

      // set the new value   
      $('#event_num').val(data.events_pos); 
     } 
}); 

無論用戶點擊鏈接還是點擊瀏覽器上的後退按鈕,每次頁面加載時,我都希望隱藏字段爲。

任何想法我可以解決這個問題還是這是一個已知的問題?

+0

您可以嘗試搜索有關如何檢測後退按鈕已被按下的問題的答案。 (http://stackoverflow.com/questions/6359327/detect-back-button-click-in-browser)您可能必須編寫一個函數,當頁面通過後退按鈕重新訪問時重置您的事件。 – jwatts1980

回答

2

如果您點擊「返回」按鈕,頁面不會再次加載,顯示緩存的頁面內容。也就是說,頁面的狀態是您最後一次訪問它的狀態。您可以重置$(document).ready或文檔卸載事件上的event_num計數器,然後您將獲得預期的行爲。

+0

這個伎倆!謝謝 – Paul

+0

好聽:) –