Ищите ловушку событий для перетаскивания ячейки вокруг графика, чтобы я мог выделить другие ячейки

Представьте, что у меня есть график с большими прямоугольниками. Я хочу перетащить круг из трафарета и позволить ему быть только в пределах существующего прямоугольника. Кроме того, когда пользователь перетаскивает круг вокруг графика (решая, куда его бросить), и круг входит в прямоугольник, я хочу изменить цвет прямоугольника.

По сути, круги разрешены только в прямоугольниках, и я хотел бы выделить прямоугольник, прежде чем пользователь отбросит круг.

Это возможно с jointjs или rappid?

1 ответ

Это возможно. На сайте JointJS даже есть небольшая, хорошо спрятанная демоверсия именно об этом. ( https://resources.jointjs.com/docs/jointjs/v2.1/demo/shapes/shapes.devs.html)

Вы просто должны возиться с опциями бумаги:

Задавать embeddingMode: true если вы этого еще не сделали, и добавьте класс встраивания к основным моментам следующим образом (очевидно, определите некоторые стили в вашем CSS для этого класса):

highlighting: {
    'embedding': {
        name: 'addClass',
        options: {
            className: 'highlighted-parent'
        }
    }
}

Наконец, реализовать validateEmbedding: function(childView, parentView) {} с вашими собственными правилами

Другие вопросы по тегам