Opera, свойства event.layerX / event.layerY и событие mouseDropped - PullRequest
3 голосов
/ 26 февраля 2012

Я пишу приложение с Raphael.js .И он должен обрабатывать события перетаскивания мышью.

То есть, когда перетаскивание мыши заканчивается, я пытаюсь поймать точку на объекте Paper Рафаэля (фактически, элемент DIV / SVG), где мышь вызвала событие drop.

FireFox и Chrome хорошо справляются со свойствами event.layerX и event.layerY.Но у Opera таких нет.

Однако он имеет свойства clientX / clientY, offsetX / offsetY и pageX / pageY (могут быть ошибочными в последних двух именах).Но я не могу создать алгоритм для расчета конечной позиции мыши.

Видите, мышь начинает «перетаскивать» вывод символа схемы (без фактического перетаскивания его изображения) и заканчивает падать на другой:

enter image description here enter image description here

Итак, Opera показывает координаты, такие как (5, 7) , когда мышь вызывает событие drop .Я предполагаю, что это координаты вокруг второго штифта.Но мне они не нужны - используя их, я не могу найти пин-код, к которому пытается подключиться пользователь.

Итак, вопрос: знаете ли вы какой-нибудь способ найти координаты курсора мыши, когдаСобытие drop вызывается относительно родительского элемента, который он удаляет (например, объект Paper Рафаэля и / или его контейнер в описанном случае).

1 Ответ

0 голосов
/ 18 октября 2012

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

...