【发布时间】:2010-12-15 09:49:34
【问题描述】:
是否有可能在 android 浏览器上以某种方式获取 javascript 中的当前缩放因子?
【问题讨论】:
标签: javascript android browser scaling
是否有可能在 android 浏览器上以某种方式获取 javascript 中的当前缩放因子?
【问题讨论】:
标签: javascript android browser scaling
Android 浏览器和 WebView 支持一个 DOM 属性,允许您查询当前设备的密度 - window.devicePixelRatio DOM 属性。此属性的值指定用于当前设备的比例因子。例如,如果 window.devicePixelRatio 的值为“1.0”,则该设备被视为中等密度设备,默认情况下不应用缩放;如果该值为“1.5”,则该设备被视为高密度设备,默认情况下页面缩放 1.5 倍;如果该值为“0.75”,则该设备被视为低密度设备,默认情况下页面缩放 0.75 倍。当然,Android Browser 和 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
【讨论】: