Я использую составную модель и расширение cytoscape-component-drag-and-drop, чтобы позволить пользователю вручную реорганизовать макет, группируя несколько узлов и легко перемещая целые группы.
Теперь я хочу кнопка для переключения отображения «групп» этих групп, но продолжает отображать все не родительские узлы. Сначала я попытался спрятать () на родительских узлах, но он также скрывает дочерние элементы, поэтому я переключился на динамическое применение класса, который задает display: hidden.
Казалось, что все получилось, , но все еще скрытый блок может при нажатии и применяется «визуальная обратная связь» Cytoscape по умолчанию, показывающая область, где скрытое поле все еще лежит.
Я пробовал множество вещей, которые не работали:
- отключить события из моего скрытого класса стилей: проверенные события: нет . Стоит ли сообщать об этом как об ошибке?
- .ungrabify (). Unselectify (). Panify (). Lock ()
- при нажатии: уничтожить объект события
- установить e.target._private.active = false
Я попробовал неприятный взлом: настройка e.target._private.position = {} Событие все еще вызывается, но уничтожение позиции успешно предотвращает "визуальный обратная связь "от случившегося , мой ящик фактически остается" скрытым ". Но все же событие происходит не на той цели: поле, а не в пустом пространстве контейнера cytoscape. Я могу продолжать взламывать и уйти с ним, но разве нет более простого решения?
Можно ли просто и действительно пропустить события скрытых родительских узлов?