要将网站缓存离线(HTML5),您需要指定运行所需的所有文件。简而言之,指定站点所需的主要组件。
在记事本中创建清单的简单方法。
注意:CACHE MANIFEST需要是第一行,您的文件将在一个空行后跟随如下:
CACHE MANIFEST
Scripts/script.js
Content/Site.css
Scripts/jquery-ui-1.8.20.min.js
Scripts/modernizr-2.5.3.js
SESOL.png
Scripts/jquery.formatCurrency-1.4.0.min.js
http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css
http://code.jquery.com/jquery-1.8.2.min.js
http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js
Content/themes/images/icons-18-white.png
Controllers/AccountController
Controllers/HomeController
Models/AccountModels
Account/Login
Home/CheckOut
注意2:每行后面都要删除所有空格。
注意3:您需要按照精确的格式FOLDER/File或FOLDER/FOLDER/FILE等进行操作。
仅仅拥有一个清单文件并不意味着它会被加载。您需要将以下内容添加到标签中:
<html manifest="~/cache.manifest" type="text/cache-manifest">
别忘了添加后,第一次页面加载时会被缓存。因此,您需要在“mobileinit”事件中注册缓存事件。
$(document).on("mobileinit", function () {
cache = window.applicationCache;
cache.addEventListener('updateready', cacheUpdatereadyListener, false);
cache.addEventListener('error', cacheErrorListener, false);
function cacheUpdatereadyListener (){
window.applicationCache.update();
window.applicationCache.swapCache();
}
function cacheErrorListener() {
alert('site not availble offline')
}
}
下载Safari并使用Web Inspector查找错误。
http://developer.apple.com/library/safari/#documentation/appleapplications/Conceptual/Safari_Developer_Guide/1Introduction/Introduction.html#//apple_ref/doc/uid/TP40007874-CH1-SW1
提示:Chrome的开发者工具"F12"将显示您需要添加的清单加载中的错误。即您仍需要添加的文件。
希望这可以帮助您,覆盖整个过程。我假设如果您处于开发阶段,您需要将它们添加到移动初始化:
$.mobile.allowCrossDomainPages = true
$.mobile.phonegapNavigationEnabled = true
$.mobile.page.prototype.options.domCache = true
$.support.touchOverflow = true
$.mobile.touchOverflowEnabled = true
Safari开发者指南:
https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/Client-SideStorage/Client-SideStorage.html#//apple_ref/doc/uid/TP40002051-CH4-SW4