android浏览器:获取比例因子

时间:2010-12-15 09:49:35

标签: javascript android browser scaling

是否有可能以某种方式在Android浏览器的javascript中获取当前缩放因子?

1 个答案:

答案 0 :(得分:3)

  

Android Browser和WebView支持DOM属性,允许您查询当前设备的密度 - window.devicePixelRatio DOM属性。此属性的值指定用于当前设备的缩放系数。例如,如果window.devicePixelRatio的值为“1.0”,则该设备被视为中密度设备,默认情况下不应用缩放;如果值为“1.5”,则设备被视为高密度设备,页面默认为1.5倍;如果值为“0.75”,则设备被视为低密度设备,页面默认为0.75x。当然,Android浏览器和WebView应用的缩放是基于网页的目标密度 - 如定义视口目标密度一节中所述,默认目标是中密度,但您可以更改目标以影响您的网页会针对不同的屏幕密度进行缩放。

例如,以下是使用JavaScript查询设备密度的方法:

if (window.devicePixelRatio == 1.5) {
    alert("This is a high-density screen");
} else if (window.devicePixelRatio == 0.75) {
   alert("This is a low-density screen");
}

有关详细信息,请查看Tageting Screens from Web Apps