我发了一个关于我的$.getJSON为什么停止的question,但我认为现在这个问题有点广泛了。
我有一个移动HTML5应用程序,做Ajax请求到一个php网络应用程序(在同一个域)。当有互联网连接时,即。navigator.onLine == true我对web应用程序执行$.getJSON调用,并将响应本地存储在设备浏览器上的websql数据库中。
如果navigator.onLine ==为false,那么我想跳过json请求并从本地拉出数据。我的JSON工作正常,并成功地存储在离线的websql存储中,但我的问题出现在添加缓存清单文件时。
我不确定如何缓存我需要的内容。这是我的缓存清单:
CACHE MANIFEST
# rev 2
CACHE:
index.html
app.html
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.css
http://code.jquery.com/jquery-1.4.3.min.js
js/data.js
js/script.js我认为我可以从code.jquery.com/..缓存外部文件的假设是正确的。因为我需要他们在线和离线。
Eric在我之前的问题中发布了一个答案,说我应该在网络下添加JS文件:标题在末尾带有*。当我这样做的时候,我的JSON调用就会像我希望的那样被触发。然而,现在这些文件不能脱机使用。
这似乎也行得通,但当我离线时,甚至连我的CSS都没有加载:
CACHE MANIFEST
# rev 2
CACHE:
index.html
app.html
js/data.js
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.css
http://code.jquery.com/jquery-1.4.3.min.js
js/script.js
NETWORK:
*有人能建议缓存javascript/css文件以供脱机使用的最佳实践吗?
非常感谢,
比利
发布于 2011-09-23 03:29:30
查看http://westciv.com/tools/manifestR/,它是创建应用程序所需的清单文件的一个很棒的工具。
AppCache要求在清单文件中列出您希望在本地提供的所有内容,因此,在这种情况下,您需要列出所有的JavaScript、CSS和您的应用程序在离线体验中运行所需的任何其他文件。ManifestR将帮助您找出该列表并为您构建它。
您的清单文件应如下所示:
CACHE MANIFEST
# rev 3
CACHE:
index.html
app.html
js/data.js
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.css
http://code.jquery.com/jquery-1.4.3.min.js
js/script.js
style.css
images.png
NETWORK:
*https://stackoverflow.com/questions/6744828
复制相似问题