JavaScript при наведении курсора - PullRequest
11 голосов
/ 21 декабря 2010

Я пытаюсь реализовать скрипт перетаскивания и столкнулся с одной проблемой.Когда вы берете элемент и начинаете его перетаскивать - элемент находится прямо под вашим курсором, и событие onmouseover очень редко запускается для элементов ниже.Но я хочу, чтобы другие элементы выделялись, когда я перетаскивал что-то поверх них.Одним из решений было бы не перетаскивать что-либо вообще - так могли бы работать события мыши, но это выглядело бы безобразно.Кто-нибудь когда-нибудь делал что-то подобное и знает, как решить эту проблему?

Если вы думаете о том, чтобы предложить какой-нибудь плагин JQuery или что-то в этом роде - пожалуйста, не надо.Мне не нужно законченное решение, это учебно.

1 Ответ

2 голосов
/ 15 января 2011

IMO, чтобы частое срабатывание события mouseover связывало событие mouseover с элементом parent всех затронутых элементов или, возможно, с самим document, поскольку событиязапутаться, они, вероятно, единственные элементы, которые могут вызывать события mouseover.

Затем, далее, напишите метод hit в вашем событии mouseover и активно проверяйте положение курсора мышипосмотрите, идет ли он под границей целевого элемента.Компромисс в удобстве использования и производительности.Вы выбираете.

Мои 2цента.

Или, возможно, вы можете перепроектировать jQuery UI, чтобы увидеть, как они реализуют элемент перетаскивания.Не проверял, но я думаю, что должен быть более мудрый путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...