2013-11-04 33 views
2

我使用History.js,有時當我單擊後退按鈕時,我只從ajax調用而不是整個頁面(包括ajax調用)獲取內容。這導致該網站看起來很糟糕,因爲沒有腳本,CSS或HTML「容器」加載。History.js - 當點擊後退按鈕時有時只顯示ajax內容

  1. 我瀏覽我的頁面。
  2. 我在地址欄中鍵入另一個網站。
  3. 我點擊後退按鈕 - 現在只有HTML從以前的Ajax調用顯示,沒有CSS,JS或其他HTML

爲什麼會發生這種情況,我該如何解決?

我的代碼如下所示:

History.Adapter.bind(window, 'statechange', function(){ 
    var State = History.getState(); 
    $.ajax({ 
     url: State.url, 
     type: 'get', 
     beforeSend: function(xhr){ 
      xhr.setRequestHeader('X-PJAX', true); 
     }, 
     success: function(resp, status, xhr) { 
      $('#wrapper').html(resp); 
     } 
    }); 
}); 

回答

2

我通過我的Ajax響應禁用緩存固定它。現在

Cache-Control: no-cache, no-store, must-revalidate

當我點擊後退按鈕整個頁面加載,而不是隻有Ajax響應。

相關問題