访问绝对屏幕比例值

时间:2017-02-16 14:29:06

标签: javascript ios mobile gestures

我正在寻找absolute screen scale值。

例如,当您绑定到gestureend事件时,您可以访问大约event.scale的{​​{1}}数据:

  1. 1 放大
  2. case: scale > 1 缩小
  3. 此数据不是绝对数据,而是相对于事件触发前的状态。

    例如:

    • 用户缩放到某个级别(让我们说)case: scale < 1
    • 然后用户缩小到某个级别(让我们说)2。 最后,结果将是视口仍然缩放,但1.8将是scale value

    所以,我的问题是,我如何才能访问< 1值?换句话说,如何比较absolute zoom scale上的scale value

1 个答案:

答案 0 :(得分:0)

我用这种方式想出来了:

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;
});