iPad applicationCache事件无法更新屏幕

时间:2010-10-19 13:12:54

标签: ipad web-applications html5 caching mobile-safari

我有一个监听所有window.applicationCache事件的html5应用程序。当需要下载时,我会在屏幕上写一个漂亮的对话框,在进度事件期间,我通过对event.loaded和event.total属性进行正确的数学运算来计算完成文件的百分比,以便更新百分比它

结果是一个精美的对话框,上面写着“安装n%”,最多100个。一切都按照我的预期进行,并且应用程序可以很好地脱机并在所有浏览器上启动。

然而,在iPad上,这似乎不起作用。我在applicationCache事件中唯一可以实现的是写入控制台。在那里,我确实看到我的处理程序实际上正在听这些事件。

我已经尝试过各种功能超时。

我的问题:

  1. 有没有办法更新任何HTML并在iPad上的这些活动中将其可视化?
  2. 为什么iPad不能像其他所有浏览器一样下载所有内容?由于我不知道的原因,它似乎进入了闲置状态。
  3. PS:我需要缓存超过600个文件。总规模总计不到1Mb。

1 个答案:

答案 0 :(得分:1)

我有同样的问题。其他applicationCache事件(updateready,cached,downloads)会触发,您可以使用jQuery或其他任何内容更改html以指示更改,但不能更改progress事件。我可以理解,iPad可能不会选择支持此事件,因为这是一个可能多次触发的事件,可能会影响iPad较慢处理器的性能。关于下载,您需要确保清单中列出的每个资源都可用。