我正在尝试在iPhone Safari中获取可用的屏幕大小,以便将容器缩小到屏幕的高度,减去状态栏和工具栏。
由于iOS总是返回屏幕尺寸,就好像手机是纵向的一样,所以我使用screen.availWidth来计算横向高度。返回的维度如下:
screen.width; //320
screen.availWidth; //30020px的差异说明了手机顶部的状态栏,但没有考虑屏幕底部的按钮栏(工具栏)。
有没有可以用来返回268px的属性?
我会这样做(screen.availWidth - 32),但用户可能会将站点添加为桌面书签,在这种情况下,这个栏将不会出现,300px值将是正确的。
发布于 2012-05-09 16:03:57
我没有确切的答案,但您可以使用navigator.standalone属性来确定用户是在Mobile Safari中还是在桌面书签中。有了这个,你就可以决定是否减去32px。
编辑:找到了答案。使用<meta name="viewport" content="user-scalable=no, width=device-width, height=device-height" />,然后可以从window.innerWidth / window.innerHeight获取正确的值
https://stackoverflow.com/questions/10511736
复制相似问题