javascript - 如何缩放 jsPlumb 图

标签 javascript jquery html css jsplumb

我正在尝试在滚动时提供缩放功能。我有一个 #mainDiv,里面有多个 .foo 表,里面有 jsPlumb 端点。当用户滚动时,#mainDiv 应该保持相同的大小并且表格应该调整大小,这实际上发生了,但是表格的端点不会改变它们的大小和位置。看看这个 jsFiddle:

https://jsfiddle.net/vaxobasilidze/cg3hkde7/9/

Fiddle 很大,但我们只需要第一个 javascript 函数。将几个元素拖到右侧,添加新链接并滚动。表将改变大小,但端点保持不变。我该如何解决端点的这个问题?

端点不是这些表的一部分,但它们是 jsPlumb 库的一部分,它的对象具有 setZoom() 函数。此功能不起作用,我想知道为什么。连接器也应该改变它们的位置。

此外,应用程序还必须在触摸设备上运行。 setZoom 是否适用于触摸设备的双指缩放,我该如何实现?

最佳答案

更新:

所以根据这个问题,我们可以只使用下面的 CSS 根据元素在父容器中的位置从左侧或右侧开始缩放。

需要在父容器中更改 CSS,如下所示

#mainDiv {
  display: inline-block;
  width: 82%;
  min-height: 100%;
  box-sizing: border-box;
  float: left;
  position:relative;
  margin: 0;
  padding: 3px;
}

请查看 JSFiddle 以获取解决方案!

JSFiddle Demo

旧答案:

我假设发生在中心的缩放是问题所在,因为我们从中间缩放表格总是超出容器边界。我建议添加以下 CSS 类,以便保留端点。

.elementTable{
  transform-origin: 0% 0%;
}

请在下面找到一个带有实现的有效 JSFiddle。

JSFiddle Demo

我的假设可能是错误的,请解释它缺少什么,我会尝试解决它!

关于javascript - 如何缩放 jsPlumb 图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47546808/

相关文章:

javascript - 单击交换按钮时,如何让我的红色 div 更改背景颜色以在红色和绿色之间切换?

javascript - 使用 jQuery 检索类名的首选方法是什么?

javascript - 绑定(bind) .click 和 .blur 事件处理程序

javascript - 扩展 Object.prototype 的陷阱是什么?

javascript - 如何使用 javascript 或 jQuery 与 PUT 或 DELETE 请求同步导航到地址?

javascript - 选择div的内容依次淡入

jquery - 在 div 单击时滑动切换并更改 div 背景颜色?

html - Chrome 中带有负 translateZ 的悬停元素

javascript - 如何在没有文件名的情况下运行 JavaScript

javascript - 从 iframe 中访问自定义属性