我正在使用jQuery touchy插件来检测pinch事件,以便用户能够放大/缩小图像.这是我的代码的要点:
var w = 800,h = 600; $('img').on('touchy-pinch',function (e,$target,data) { $(this).css({ width: w * data.scale,height: h * data.scale }); });
>规模
> prevIoUsScale
> currentPoint
> startPoint
> startDistance
它在第一次捏合时工作正常,但是一旦我的手指离开屏幕,然后我再次尝试再做,图像会重新缩放.如何修改我的处理程序,以便图像从中断处继续而不是重新缩放?使用数据的prevIoUsScale并没有帮助,因为之前的Scale也会被重置.
最佳答案
这里的问题是你没有将你的变量w和h重置为他们的后缩放值,只有css,所以在另一个缩放事件中样式恢复到800×600.您需要在scale事件上设置为w * data.scale和h * data.scale的持久性w和h.