【发布时间】:2011-08-28 06:25:37
【问题描述】:
我正在为 iOS 开发一个 web 应用程序,我注意到在移动 safari 上运行和从主屏幕运行之间存在一些奇怪的事情。
是否有任何资源可以提供用于在模式之间切换的通用接口?
如果没有,是否有任何资源详细说明了两种模式之间的所有差异和陷阱?
我遇到的事情:
长轮询有点奇怪。见this example。
window.innerWidth & window.innerHeight 不一致。
- Mobile Safari - 垂直方向按预期工作,水平不
- 垂直
- 宽度- 768
- 身高- 946
- 水平
- 宽度- 769??
- 身高- 518??
- 垂直
- 主屏幕上的 Web 应用程序 - 这些总是有意义的。
- 垂直
- 宽度- 768
- 身高- 1004
- 水平
- 宽度- 1024
- 身高- 748
- 垂直
其他内容:
This question 还揭示了一些奇怪的行为。
【问题讨论】:
-
第一个错误示例非常适合我作为 iPad iOS 4.3 上的主屏幕应用程序。当你这样做时会发生什么?
-
@ampersand - 嗯,我猜它适用于 iPad 2(我刚刚在 v 4.3.2 上测试过),但适用于 iPod 4g(v.4.3.2)和 iPod 2g(v.4.2) .1)它不起作用(没有错误移动)。我已经卖掉了我的 iPod 1,但我认为它在那里也不起作用。重点是,作为主屏幕应用的浏览器与普通的移动 safari 不同。
-
FWIW,从主屏幕启动的网络应用程序使用与移动 safari (Nitro) 中使用的完全不同的 JavaScript 引擎。见theregister.co.uk/2011/03/15/…
-
@Matt Bridges- 是的,我想我在某处读到这是因为安全问题不允许浏览器外部的某些 API 访问。
标签: javascript ios web-applications mobile-safari