设置 mxgraph 单元格只能在 canvas 宽度内拖动

Set mxgraph cell only draggable within the canvas width

我在图中有多个顶点单元格。我正在使用 JavaScript 库 mxGraph。当我从 canvas 的边界拖动单元格时,canvas 会延伸。我想禁止单元格拖动。是否有一些功能可用于限制 canvas 边界内的拖动?

有一个函数叫做:graph.setCellsMovable(false);但是这个整体锁定,只有当用户将它拖到边界外时我才需要将单元格移动设置为 false。

您应该尝试一下 mxgraph.autoExtend 属性,它似乎配置了您正在寻找的内容

https://jgraph.github.io/mxgraph/docs/js-api/files/view/mxGraph-js.html#mxGraph.autoExtend

Specifies if the size of the graph should be automatically extended if the mouse goes near the container edge while dragging. This is only taken into account if the container has scrollbars. Default is true.

关于自动扩展还有其他配置属性,如https://jgraph.github.io/mxgraph/docs/js-api/files/view/mxGraph-js.html#mxGraph.extendParentsOnAdd