标签: offlineapps

当关闭WiFi时,navigator.onLine仍为true,在浏览器中设置为"脱机工作"时为false

当我关闭Wi-Fi(OS X中我的笔记本上的机场)时,navigator.onLine仍然返回true.这是违反直觉的行为.但是当我在像Firefox这样的浏览器中设置"脱机工作"时,它会正确返回false.这是预期的吗?

alert(navigator.onLine ? "online" : "offline");
Run Code Online (Sandbox Code Playgroud)

javascript offlineapps

6
推荐指数
1
解决办法
4571
查看次数

从jQuery Mobile更改默认数据主题

使用jQuery Mobile,我可以使用自定义主题创建页面

<div data-role="page" data-theme="s" id="home">...
Run Code Online (Sandbox Code Playgroud)

现在这可行,但要求我在每个页面中添加此行,并且每次添加新页面.我尝试添加data-theme="s"到body标签,但这没有任何影响.有没有办法做到这一点,然后每页手动设置?

javascript image offlineapps cordova

6
推荐指数
1
解决办法
5203
查看次数

HTML5 AppCache:如果无法访问服务器但可以访问网络,如何实现脱机模式

按设计HTML5脱机支持(AppCache)可在客户端设备脱机或客户端设备联机且服务器可访问时工作.之后我缓存了应用程序并在浏览器(刷新它)中重新打开它,当设备无法访问互联网时,浏览器从AppCache加载应用程序.在这种情况下,浏览器不会尝试获取appcache清单(它知道我们处于脱机状态).

但是让我们考虑一下我的设备没有脱机的情况.它仍然有互联网连接.但是我的服务器坏了.可能有许多不同的原因(硬件故障,AppPool停止,IIS限制,DNS错误等).在这种情况下,当我在浏览器中打开缓存的应用程序时,它将尝试获取appcache清单并获得404错误(未找到).然后浏览器清除应用程序的AppCache!因此,在下一次运行时,它不会从AppCache加载它并显示404错误"page".没有更多的离线工作.

对我来说,离线模式功能取决于服务器无法访问的原因看起来很奇怪.我为什么要关心用户(没有互联网连接或服务器关闭)?

所以我的问题是:做任何人知道什么办法可以使应用程序在工作时的设备在线,但它的服务器不可用?
理想情况下,我应该能够捕获window.applicationCache的错误事件并告诉它"它没关系,请继续使用缓存,不要废弃它".

html5 offlineapps html5-appcache

6
推荐指数
1
解决办法
1090
查看次数

离线网络应用程序。如何存储数据?

介绍:

我想开发一个 webapp 来管理体育比赛。它必须能够完全离线运行,在本地存储数据并在有可用互联网连接时通过 AJAX 在线发布结果 - 这可能是后天。

题:

如何使用Javascript存储数据?

附加说明:

  • 我不想使用任何服务器端技术。
  • 它必须像数据库一样安全。我读过关于 cookie 和 html5 存储的文章,但没有一个听起来令人信服。

javascript local-storage offlineapps

6
推荐指数
1
解决办法
1万
查看次数

基于kiosk的应用程序的HTML 5/Javascript

有没有人有使用HTML 5和Javascript构建长期运行的自助服务终端应用程序的经验?

我们目前正在使用Silverlight,但我希望转向更轻量级/更灵活的东西.我们关注的事情是内存泄漏的可能性,可靠的离线能力(设备可能会经常丢失互联网连接).

理想情况下,我们会在在线和自助服务终端上使用相同的框架,因此有一个共享的代码库

谢谢你的时间

javascript silverlight html5 kiosk offlineapps

6
推荐指数
1
解决办法
4500
查看次数

如何检测离线Meteor Cordova应用程序,然后使用GroundDB临时存储数据,直到重新联机?

这是目标:

一位农民有一部智能手机,然后进入他的谷仓用应用程序清点库存.有时他的手机没有在谷仓中连接互联网,因此应用程序需要脱机工作,离线存储数据,然后在重新连接后将其同步到云端.

农民也应该只需要登录并注册一次应用程序,然后每次打开应用程序时,它应该只是打开主屏幕而不再要求登录信息.怎么可以做到这一点?

我正在使用Meteor制作应用程序,而Meteor内置了Cordova来打包应用程序.我见过GroundDB:https://github.com/GroundMeteor/db

据我所知,在文档中,我知道如何创建本地集合并使用collection.insert将数据添加到该集合中.

但我很遗憾如何编写应用程序以在手机上打开而不需要互联网,并检测是否存在互联网?

然后我如何检测互联网是否已经回来,然后同步所有以离线模式存储的数据?

如果有人可以帮助说明这将如何工作,将不胜感激!

offlineapps cordova meteor

6
推荐指数
2
解决办法
1773
查看次数

IE 11浏览器在尝试访问App Cached离线页面时显示"您未连接到网络"页面

背景:

我已经建立了一个甚至可以脱机工作的网页.本页面遵循"AppCache"指南.

我的网络浏览器是HP Windows 8平板电脑上的IE11.

当我点击物理服务器(Oracle weblogic)上页面的直接URL时,我就可以访问该页面了.即使我关闭网络连接,也可以通过IE11浏览器访问同一页面.

问题:

当我通过公司网关(F5和OHS)访问同一页面时,当有网络连接时,该页面可用.但是一旦我关闭了网络连接,我就会看到" 你没有连接到网络 "页面.

当我连接回网络并尝试访问同一页面时,我可以看到我的页面请求的资源都是从本地缓存浏览器提供的(我通过IE开发人员工具检查网络).

我不确定发生了什么.即使没有连接,我也想访问我的页面.

注意:

我的网页只能通过网关使用"HTTPS"访问.我直接访问服务器的地方使用'HTTP'

internet-explorer offline-caching offlineapps html5-appcache internet-explorer-11

6
推荐指数
1
解决办法
728
查看次数

硬刷新后注册 Service Worker

每当带有 Service Worker 的 Web 应用程序在硬刷新后重新加载时(Ctrl + F5例如,对于 Chrome),Service Worker 之后将无法注册。

根据W3C的文档

注意:如果请求是强制刷新(shift+refresh),navigator.serviceWorker.controller 将返回 null。从此属性 getter 返回的表示同一 Service Worker 的 ServiceWorker 对象是相同的对象。

那么,问题来了:硬刷新完成后,真的不可能立即注册Service Worker吗?我正在使用 来检查 Service Worker 是否存在navigator.serviceWorker.controller。请参阅随附的 GIF,其中显示了与https://googlechrome.github.io/samples/service-worker/basic/页面的交互

在此输入图像描述

javascript google-chrome offlineapps service-worker

6
推荐指数
2
解决办法
4070
查看次数

Django休息框架,m2m关系和pouchdb集成

当后端是具有多对多关系的Django-rest-framework(DRF)应用程序时,将pouchdb集成到具有同步功能的Web应用程序中的最佳方法是什么?

例如,假设我有这样的模型:

class Account(models.Model):
    name = models.CharField()

class Expense(models.Model):
    amount = models.DecimalField()
    user = models.ForeignKey(User)
    account = models.ForeignKey(Account)

# Multiple users are in the account:
class AccountUser(models.Model): 
    account = models.ForeignKey(Account)
    user = models.ForeignKey(User)
Run Code Online (Sandbox Code Playgroud)

使用足够的序列化程序来计算帐户总数和足够的权限.

我要么需要DRF来表现像Couchdb(带转数),要么将Couchdb与DRF集成(使用Coudhdbkit?还是单独使用?).我怎样才能做到这一点?还有其他方法吗?

谢谢

synchronization couchdb offlineapps django-rest-framework

5
推荐指数
0
解决办法
490
查看次数

Chrome 应用程序中的 draw.io 插件

在draw.io的在线版本中,您可以使用它们的url来启用额外的插件,如下所示https://www.draw.io/?p=svgdatasvgdata是插件ID)

有没有办法使用Chrome 应用程序启用插件?

offlineapps draw.io

5
推荐指数
1
解决办法
3366
查看次数