JointJS Неинтерактивные элементы
Главная
Вопросы
JointJS Неинтерактивные элементы
Я хочу отключить перемещение элементов и ссылок в диаграммах JointJS, сохранив при этом другие функции, такие как гиперссылки элементов и выделение ссылки при наведении мыши. Я ссылался на следующие ссылки: https://groups.google.com/forum/#!searchin/jointjs/drag/jointjs/R0KZwKqfRbI/rGLJz3t4Un0J https://groups.google.com/forum/#!searchin/jointjs/read $20only/jointjs/o8CKU6N7EOI/1KGNFCQQHGUJ
Но они мне не помогли. Я пробовал: paper.$el.css('pointer-events', 'none'); Но отключает все. Я хочу отключить только перетаскивание элементов и ссылок
person
Lahore
schedule
03.06.2014
source
источник
Ответы (4)
Предполагая, что я правильно вас понял, вторая ссылка должна дать вам ответ. Вам просто нужно сделать документ неинтерактивным:
var paper = new joint.dia.Paper({
el: '#paper',
width: 500,
height: 500,
gridSize: 1,
graph: new joint.dia.Graph,
interactive: false
});
Это должно отключить любое перемещение элементов/ссылок/вершин при сохранении функций выделения.
person
ckuepker
schedule
12.09.2014
paper.$el.css('pointer-events', 'none');
отключит перемещение всего на бумаге. Если вы хотите отключить перемещение определенного элемента, используйте его.
element.attr({rect:{style:{'pointer-events':'none'}}});
Подробнее здесь: Сделать элементы недоступными для выбора в JointJS
person
Aung Myat Hein
schedule
08.03.2016
Я предлагаю получить объект события и использовать собственную логику для отключения/поддержания активности. Как ты это делаешь:
var b_paperDraggable = false;
var b_paperPropertise = false;
paper.on('cell:pointerdown', function (cellView) {
if (b_paperDraggable == true) {
//...
}
if (b_paperPropertise == true) {
openPropInModal(cellView.model.id, cellView.model.attributes.elmTypeID);
$("#modal-container").modal();
}
});
person
shdr
schedule
20.04.2017
Решение для меня - добавить cell.model.attr('./pointer-events','none');
, например, вам нужно найти модель:
Например, после создания элемента:
var cell = paper.findViewByModel(graph.getLastCell());
cell.model.attr('./pointer-events','none');
person
Omar Duarte
schedule
18.03.2019