2011-09-28 71 views
2

我正在使用緩存使其可脫機使用的web應用程序。運行Chrome時(離線和在線),一切正常。但是當我在iPad上運行它時,鏈接不再工作,我無法在任何地方加載頁面。刪除緩存使鏈接再次運行,所以顯然與緩存有關。直接導航到webapp的單獨頁面在Safari中也可以正常工作,它是導致錯誤的鏈接。默認情況下,所有鏈接都使用jQuery Mobile中的AJAX加載。通過添加rel =「external」來改變這個問題也解決了這個問題,但顯然我不想那樣做。緩存殺死鏈接(iPad上的jQuery移動版)

要啓用緩存,我添加了這段代碼:並創建了一個包含所有文件(腳本,css,圖像,html)的清單文件。有誰知道是什麼問題?

+2

我發現你不能緩存ajax請求。使用jquery mobile離線工作的唯一方法是刪除所有ajax鏈接(因爲我不得不使用外部鏈接而不是選項),或者將整個應用程序放在一個單獨的html文件中(不理想,但現在是最好的解決方案) 。 – Prd87

回答

1

我在使用清單進行緩存時遇到過這種情況。我發現Chrome有沒有限制。 iPad和iPhone呢。這看起來很小,大約5mb。嘗試儘可能地刪除圖像,並在您的腳本上使用YUI Compressor。

實際上可以緩存Ajax請求,系統並不關心請求是通過AJAX還是正常的完整請求。您所要做的就是將您想要通過ajax檢索的URL像其他資產一樣放入清單中。

希望這有助於