获取绝对屏幕比例值
Access to the Absolute Screen Scale Value
我正在寻找 absolute screen scale
值。
例如,当您绑定到 gestureend
事件时,您可以访问 event.scale
数据,该数据是 1
:
周围的数据
case: scale > 1
放大
case: scale < 1
缩小
此数据不是绝对数据,而是相对于事件触发前的状态。
例如:
- 用户缩放到一个级别(比方说)
2
- 然后用户缩小到一个级别(比方说)
1.8
。
最后,结果将是 视口仍然缩放 ,但 scale value
将是 < 1
。
所以,我的问题是,如何访问 absolute zoom scale
值?换句话说,我如何比较 scale value
和 initial scale value
?
我是这样想出来的:
function getCurrentScale() {
return document.documentElement.clientWidth / window.innerWidth;
}
const INITIAL_SCALE = getCurrentScale();
let lastScale = INITIAL_SCALE;
document.addEventListener('gestureend', () => {
let currentScale = getCurrentScale();
console.log("scale", {
initial: INITIAL_SCALE,
last: lastScale,
current: currentScale
});
lastScale = currentScale;
});
我正在寻找 absolute screen scale
值。
例如,当您绑定到 gestureend
事件时,您可以访问 event.scale
数据,该数据是 1
:
case: scale > 1
放大case: scale < 1
缩小
此数据不是绝对数据,而是相对于事件触发前的状态。
例如:
- 用户缩放到一个级别(比方说)
2
- 然后用户缩小到一个级别(比方说)
1.8
。 最后,结果将是 视口仍然缩放 ,但scale value
将是< 1
。
所以,我的问题是,如何访问 absolute zoom scale
值?换句话说,我如何比较 scale value
和 initial scale value
?
我是这样想出来的:
function getCurrentScale() {
return document.documentElement.clientWidth / window.innerWidth;
}
const INITIAL_SCALE = getCurrentScale();
let lastScale = INITIAL_SCALE;
document.addEventListener('gestureend', () => {
let currentScale = getCurrentScale();
console.log("scale", {
initial: INITIAL_SCALE,
last: lastScale,
current: currentScale
});
lastScale = currentScale;
});