2012-08-28 37 views
1

我已經創建了一個可以離線訪問的網絡應用程序。然而,我遇到的問題是讓瀏覽器顯示新版本的頁面。離線緩存不加載更新文件

我可以看到文件被再次下載:

Application Cache Downloading event 
Application Cache Progress event (0 of 3) pad/jquery.min.js 
Application Cache Progress event (1 of 3) pad/index.html 
Application Cache Progress event (2 of 3) pad/ 
Application Cache Progress event (3 of 3) 
Application Cache UpdateReady event 

然而在頁面的刷新,仍然被顯示舊index.html文件。

我已經正確設置了我的offline.manifest文件並在html標記中引用了它。我不確定這裏有什麼問題。

回答

0

在某些情況下,您可能必須使用javascript手動交換新緩存。以下是我在頁面上處理問題的方法:

<script>window.addEventListener('load', function(e) {window.applicationCache.addEventListener('updateready', function(e) {if (window.applicationCache.status == window.applicationCache.UPDATEREADY) {window.applicationCache.swapCache();window.location.reload();} else {}}, false);}, false);</script> 

這會自動交換新緩存並在頁面可用時重新加載頁面。你可以get more info on using javascript with appcache here at html5rocks