问题标签 [svgpanzoom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
27 浏览

javascript - 修改复位控制的动作

当最终用户选择 panzoom 'reset' 选项时,我想执行一些额外的代码,但没有setOnResetAPI。除了标准resetZoom()resetPan().

[编辑]但是,我认为我的问题更深,这就是我修改标题的原因。附加代码是重置为 0.98(而不是 1)的缩放级别,以便在最外面的形状周围留下一个小边距 - 否则它们就在 SVG 边框上,如果fit:true看起来很糟糕的话。

我曾尝试简单地覆盖标准reset()如下:

但它不起作用:SVG 不再居中,并且似乎位于左上角。我试过 3.5.2 和 3.6.1 但效果是一样的。

难道我做错了什么?有没有更好的方法来实现我想要的?

0 投票
1 回答
91 浏览

javascript - PanZoom 赶上 Touch Up 事件

我正在使用 Panzoom JS 放大地图。它的工作方式正是我在移动和桌面上放大和缩小所需的方式。当您单击地图上的某个项目时,我会抓取相对于容器左上角的 x/y 坐标,并考虑应用的任何比例,然后在数据库中查找该位置/页面并打开它。这一切在桌面上都很好用,但在触摸上却不行。我需要能够捕捉到触摸位置(就像你用鼠标点击一样),但前提是没有触摸移动,所以我可以区分平移/移动、捏合/缩放和点击/润色(点击)。我找不到任何文件来解决这个问题。任何帮助,将不胜感激。