在使用“deviceready”事件启动应用程序后,我在 Android 上的 Phonegap 应用程序在 ZTE Blade(原生 800px)上返回错误的 screen.width(window.innerWidth 相同)值。我得到的宽度值如 320、533 或 787 像素,有时在一个应用程序实例(启动)中多次询问时会得到不同的值...
我的 AndroidManifest.xml 中有 android:screenOrientation="landscape"。在 Eclipse (Indigo) 中使用 Phonegap/Cordova 1.8.1。
screen.width 的一些示例值:
在 index.html 中
- 在document.addEventListener+"deviceready"之前:320
- 就在“设备就绪”之后:320
然后由于 2 个闪屏而重定向 3 次(将 window.location 更改为不同的 HTML 文件),最后登陆到 main.html。我在每个文件中包含我的 .js 代码只是为了调试,并获得 3 个 console.logs:
- 320
- 787
- 787
很奇怪...
最佳答案
有一篇综合文章(+不同值的比较表)你应该阅读:http://tripleodeon.com/2011/12/first-understand-your-screen/
希望这对您的问题有所帮助。
关于JavaScript+Phonegap+Android : screen. 宽度返回错误的(几乎是随机的)值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11524669/