html5 图片手势缩放,如何计算transform-origin

发布于 2022-09-03 23:52:06 字数 510 浏览 21 评论 0

图片手势缩放

我的思路是,计算手指移动后,两个触摸点的中点相对于图片左上角的坐标,得出transform-origin(即变换中心)
根据手指移动前后的距离,得出缩放比例

然而,按照这个思路,得出效果却有bug,图片在放大/缩小到一定程度,会有严重的抖动、漂移现象


问题排查

如果,不设置transform-origin,图片缩放就没有上面所说的现象。因此,我觉得一定是我计算transform-origin的姿势有问题...

链接
code


问题已解决

不使用动态修改transform-origin的方法

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

望她远 2022-09-10 23:52:06

touchstart的时候计算两个手指的中点?

腹黑女流氓 2022-09-10 23:52:06

仿射变换
每次变化的时候更新 HTMLElement.style.transform.matrix 的传递参数即可。使用 transform 的优点是变换不会引起浏览器回流,有性能优势,缺点就是如果有事件监听的话,需要逆变换才能拿到真实坐标。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文