这很奇怪。我使用javascript来确定网页中的分辨率。对此,我有以下功能(有些为了这个目的简化):网页应用中的Android屏幕分辨率不恒定
function check() {
var win = document.defaultView || document.parentWindow,
ratio = win.devicePixelRatio ? win.devicePixelRatio : 1,
h = win.innerHeight,
w = win.innerWidth,
root = document.documentElement;
if (!h) {
h = root.clientHeight;
w = root.clientWidth;
}
alert("height/width/ratio; " + h + "/" + w + "/" + ratio); 在Android设备上
}
似乎是一个非常奇特的现象:
我给一个歌Nexus S作为例子,但很显然,我已经在运行不同版本的许多其他Android设备上验证了这一点。
如果您通过单击电子邮件应用程序(Gmail或Outlook)中的链接到达包含上述脚本的页面,则警报将产生1130/800/1.5(高度和宽度过高)。这是一致的。现在,如果你到地址栏并编辑网址(添加/删除参数或参数值)并点击“开始”,完全相同的代码将产生452/320/1.5(那更像是它,这也是一致的)。
这是怎么发生的呢?
编辑:值得注意的是,到目前为止,这似乎只适用于具有devicePixelRatio> 1的设备,即开V 1.5/1.6
2011-09-21
danijels
+0
有浏览器缩放影响吗? –
+0
我无法想象,不。该页面在两个实例中看起来都是相同的,唯一需要做的是更改url并重新加载,而不是对缩放执行任何操作。在此期间,我无法看到变焦如何自行改变。 –