screen.width 和 .height 应该包含平板电脑的屏幕分辨率(以设备像素为单位),并且应该在设备方向改变时改变(引用,参见 http://www.quirksmode.org/mobile/tableViewport.html )。但是,对于 Nexus 7 Android 平板电脑,无论方向如何,这些值始终为 screen.width = 1280 和 screen.height = 736。 736 的高度允许 64 像素的状态栏(实际屏幕高度 = 800 像素)。
在纵向模式下翻转这些值很容易 (window.orientation=== 0 || window.orientation=== 180),宽度为 736,高度为 1280,但由于状态栏位于顶部,正确的值应该是 800 x 1216。
在 Nexus 7 等 Android 设备上,是否有一种通用/最佳实践方法来获取以设备像素为单位的屏幕宽度?我知道 window.outerWidth,但注意到它有时不正确。方向改变时无法交换宽度和高度是所有 Android 设备的通病吗?
最佳答案
我也在为 Nexus 7 屏幕尺寸而苦苦挣扎,但是您最好获取文档或窗口的实际浏览器尺寸,这些会根据方向自行调整。
这个网站对它的解释做得更好http://responsejs.com/labs/dimensions/
关于javascript - 使用 Javascript 为 Android(Nexus 7 平板电脑)获取正确的设备显示宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13245454/