Javascript svgPanZoom:仅使用鼠标中键平移

Javascript svgPanZoom:仅使用鼠标中键平移,javascript,svgpanzoom,Javascript,Svgpanzoom,是否有一种简单的方法,只在按下鼠标中键时平移?默认行为是平移任何按下的鼠标按钮或任何触摸 之前的平移看起来很有希望,但是你只得到了旧的和新的位置,而不知道是什么触发了平移 我可能可以使用运行,但通过几个简单的检查,似乎需要做很多额外的工作。不,没有简单的方法可以更改处理平移的事件。您基本上有两种解决方案: 更改源代码并编译自己的版本。这应该是直截了当的,但有一个缺点,每当库更新时,如果您想要最新的版本,就必须重新编译您的版本。另一方面,版本3非常稳定,在过去两年中只有一些小的变化。 使用cust

是否有一种简单的方法,只在按下鼠标中键时平移?默认行为是平移任何按下的鼠标按钮或任何触摸

之前的平移看起来很有希望,但是你只得到了旧的和新的位置,而不知道是什么触发了平移


我可能可以使用运行,但通过几个简单的检查,似乎需要做很多额外的工作。

不,没有简单的方法可以更改处理平移的事件。您基本上有两种解决方案:

更改源代码并编译自己的版本。这应该是直截了当的,但有一个缺点,每当库更新时,如果您想要最新的版本,就必须重新编译您的版本。另一方面,版本3非常稳定,在过去两年中只有一些小的变化。 使用customEventsHandler。是的,这不是微不足道的,但是您可以从不改变核心中获益。它应该非常简单,因为您可以使用平移并只传递最后一个鼠标位置和当前鼠标位置之间的增量,而无需担心SVG当前缩放。
不,没有简单的方法可以更改处理平移的事件。您基本上有两种解决方案:

更改源代码并编译自己的版本。这应该是直截了当的,但有一个缺点,每当库更新时,如果您想要最新的版本,就必须重新编译您的版本。另一方面,版本3非常稳定,在过去两年中只有一些小的变化。 使用customEventsHandler。是的,这不是微不足道的,但是您可以从不改变核心中获益。它应该非常简单,因为您可以使用平移并只传递最后一个鼠标位置和当前鼠标位置之间的增量,而无需担心SVG当前缩放。 在对元素调用svgPanZoom之前,可以绑定mousedown事件并调用

document.getElementById'svg-id'.onmousedown=function e{ 如果e.button!==1 e.stopImmediatePropagation; } svgPanZoom'svg-id'{ 可缩放:对, ControlIConseabled:正确, 菲特:没错, 中:是的, 最小缩放:0.1 }; 容器{ 宽度:300px;高度:300px;边框:1px纯黑; } 在对元素调用svgPanZoom之前,可以绑定mousedown事件并调用

document.getElementById'svg-id'.onmousedown=function e{ 如果e.button!==1 e.stopImmediatePropagation; } svgPanZoom'svg-id'{ 可缩放:对, ControlIConseabled:正确, 菲特:没错, 中:是的, 最小缩放:0.1 }; 容器{ 宽度:300px;高度:300px;边框:1px纯黑; }