2016-05-09 47 views
1

如果您使用的是谷歌日历,你可能会注意到,他们有"Offline" feature。即使您处于离线状态,也可以使用Google日历。我很想知道他们使用何种策略来启用此功能?如何让我的WebApp脱机?

我有一个PHP/MySQL的发票应用程序,并我希望让用户在使用我的系统即使是离线,那么当网络又回来了,数据应与网络版同步。

我不想安装在我的客户的电脑我的代码,所以我希望,如果有人有一个想法,让我做一样的东西,他们在谷歌日历或任何其他的想法,可以帮助做。

回答

1

有一个叫localStorage的一个JavaScript变量。你可以存储在那里执行的命令队列,你可以可以实现同步的功能,如:

function synchronize(queue) { 
    while (!queue.isEmpty()) { 
     queue.pop().execute(); 
    } 
} 

您可以使用别的任何东西,包括脱机存储,但请记住,离线存储是仅限HTML5支持,所以如果你想支持旧浏览器,那么你也需要有一个回退逻辑。