有了 HTML5 中的离线 API,您只要为用户提供完美的离线体验,就没有任何理由。帮助这个情况的一个因素是 navigator.onLine
属性,这是 Chrome 开发者版最近推出的一项功能。此属性会返回 true
或 false
,具体取决于应用是否有网络连接:
if (navigator.onLine) {
console.log('ONLINE!');
} else {
console.log('Connection flaky');
}
Web 应用还可以监听 online
和 offline
事件,以确定连接何时重新可用或应用何时离线:
window.addEventListener('online', function(e) {
// Re-sync data with server.
}, false);
window.addEventListener('offline', function(e) {
// Queue up events for server.
}, false);
我在 http://html5-demos.appspot.com/static/navigator.onLine.html 上发布了一个工作演示,有关离线事件的详细信息,请参阅 MDN。