繁体   English   中英

HTML5离线应用程序

[英]HTML5 Offline Application

我正在尝试在单个HTML页面中应用html5脱机应用程序。 Google,Jquery或其他一些服务提供商是否提供任何一种可以轻松启用脱机缓存的线路链接API (例如我们使用Google Map Link)? 我是html5和Java语言的新手,请帮帮我。

非常感谢。

这确实不像单链接包含那么容易。 至少,您需要一个清单文件。 该文件告诉您的应用程序应缓存哪些文件。 您可以在这里阅读更多内容。 这是清单文件内容的示例:

清单内容

CACHE MANIFEST
/clock.css
/clock.js
/clock-face.jpg

您也可以在此处阅读有关清单/离线应用程序的很好的教程。

放置清单文件后,您可以使用以下代码测试清单,以及缓存,缓存等内容以及不缓存内容。

调试代码:

var cacheStatusValues = [];
cacheStatusValues[0] = 'uncached';
cacheStatusValues[1] = 'idle';
cacheStatusValues[2] = 'checking';
cacheStatusValues[3] = 'downloading';
cacheStatusValues[4] = 'updateready';
cacheStatusValues[5] = 'obsolete';

// Listeners for all possible events
var cache = window.applicationCache;
cache.addEventListener('cached', logEvent, false);
cache.addEventListener('checking', logEvent, false);
cache.addEventListener('downloading', logEvent, false);
cache.addEventListener('error', logEvent, false);
cache.addEventListener('noupdate', logEvent, false);
cache.addEventListener('obsolete', logEvent, false);
cache.addEventListener('progress', logEvent, false);
cache.addEventListener('updateready', logEvent, false);

// Log every event to the console
function logEvent(e) {
    var online, status, type, message;
    online = (navigator.onLine) ? 'yes' : 'no';
    status = cacheStatusValues[cache.status];
    type = e.type;
    message = 'online: ' + online;
    message+= ', event: ' + type;
    message+= ', status: ' + status;
    if (type == 'error' && navigator.onLine) {
        message+= ' (prolly a syntax error in manifest)';
    }
    console.log(message);
}

// Swap in newly downloaded files when update is ready
window.applicationCache.addEventListener(
    'updateready', 
    function(){
        window.applicationCache.swapCache();
        console.log('swap cache has been called');
    }, 
    false
);

希望这可以帮助。

通常,通过创建清单文件来启用html5脱机功能,该清单文件描述浏览器应在您的应用程序中缓存哪些资源。

读这个

http://www.webreference.com/authoring/languages/html/HTML5-Application-Caching/

以及一般的Google搜索“ html5清单”。

我不知道一页应用程序会带来多大的好处。 您的应用必须能够离线运行才能获得收益。 因此,例如,电子邮件RIA可能允许您离线编写消息,并将其存储在本地存储中,直到您在线并可以发送消息为止。 同样,它可能会在联机时加载和存储您的电子邮件,以便您可以在离线时查看邮件...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM