Установить перетаскиваемую ячейку mxgraph только в пределах ширины холста

#javascript #mxgraph

#javascript #mxgraph

Вопрос:

У меня есть несколько вершинных ячеек на графике. Я использую библиотеку mxGraph JavaScript. Когда я перетаскиваю ячейку с границы холста, холст расширяется. Я хочу запретить перетаскивание ячеек. Доступна ли какая-либо функция для ограничения перетаскивания в пределах границ холста?

Вызывается функция: graph.setCellsMovable(false); но эта блокировка в целом, мне нужно установить перемещение ячейки false только в том случае, если пользователь перетаскивает ее за пределы границы.

Ответ №1:

Вы должны попробовать mxgraph.autoExtend свойство, которое, похоже, настраивает именно то, что вы ищете

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

Указывает, должен ли размер графика автоматически увеличиваться, если мышь приближается к краю контейнера при перетаскивании. Это учитывается только в том случае, если в контейнере есть полосы прокрутки. По умолчанию значение true.

Существуют также другие свойства конфигурации для автоматического расширения, например https://jgraph.github.io/mxgraph/docs/js-api/files/view/mxGraph-js.html#mxGraph.extendParentsOnAdd