我試圖構建一個網絡應用程序購物清單。 我想在離線時使用html5應用程序緩存來查看列表。 購物清單項目存儲在本地存儲中。 在我的筆記本電腦上一切正常,但在我的iPhone上,似乎所有頁面都被緩存,但這不是我的目的。Html5應用程序緩存在iPhone上無法正常工作
I have three pages:
index.html: page with the login form
list.html: page to add items to the list
offline.html: page to view the list when offline (f.e. during shopping)
我的清單文件(offline.appcache)看起來像如下幷包含在HTML標籤的index.html和list.html:
CACHE MANIFEST
# 24/05/2017 16:55:23
CACHE:
/shopping-app/offline.html
/shopping-app/offline.js
/includes/jquery/jquery-1.9.1.min.js
/includes/bootstrap/css/bootstrap.min.css
/includes/bootstrap/js/bootstrap.min.js
NETWORK:
*
FALLBACK:
/shopping-app/*.html /shopping-app/offline.html
的目的是,當你參觀對子級index.html或list.html脫機時,您會看到offline.html。 這適用於我的筆記本電腦,但不適用於iPhone上的Safari。儘管offline.html被正確緩存,但重定向失敗。
所以我加了下面的行中我的javascript:
if(((navigator.userAgent.match(/iPhone/i))
|| (navigator.userAgent.match(/iPad/i)))
&& navigator.onLine === false)
document.location.href = "/shopping-app/offline.html";
到目前爲止,它的工作,但因爲我包含在index.html,然後list.html清單,這些網頁,緩存爲好。當我現在更改list.html上的列表時,更改在我的iPhone上不可見。
所以我加入的index.html,然後list.html頭以下的線路,但沒有任何效果:
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
任何想法來解決這個問題?
由於提前, 克里斯托夫