4

我正在使用 jQuery touchy插件来检测捏合事件,让用户能够放大/缩小图像。这是我的代码的要点:

变量 w = 800,
    h = 600;
$('img').on('touchy-pinch', function (e, $target, data) {
    $(这个).css({
        宽度:w * data.scale,
        高度:h * data.scale
    });
});

其中自定义数据对象包含以下内容:

  • 规模
  • 以前的规模
  • 当前点
  • 起点
  • 开始距离

它在第一次捏合时效果很好,但是一旦我的手指离开屏幕然后我再次尝试这样做,图像就会重新缩放。如何修改我的处理程序以使图像从中断处继续而不是重新缩放?使用数据的 previousScale 并没有帮助,因为 previousScale 也被重置。

4

1 回答 1

3

这里的问题是您没有将变量 w 和 h 重置为其后缩放值,只有 css,因此样式在另一个缩放事件中恢复为 800x600。w*data.scale您需要一个持久的 w和h 设置为h*data.scalescale 事件。

于 2012-09-10T16:53:02.243 回答