Выход из объекта и поднятие мыши
Добрый день.
Есть ли возможность реализовать событие "поднятие мыши", если курсор находится вне объекта? Пример: Зажали мышь внутри какого-то элемента, сдвинули мышь за край элемента, отжали мышь. Как отследить это и запустить свою функцию? .mouseleave() не подходит, т.к. обработает только выход за пределы, независимо от того зажата мышь или нет. Заранее спасибо. |
На mousedown проверяем находимся ли мы в нужном элементе, если да - начинаем слушать mouseleave. Первый mouseleave - то что вам нужно. Не забудьте отписаться от события на mouseup
|
+ вриант проще и немного хуже: делаем глобальный флаг о том зажата ли кнопка, на mousedown делаем его true, на mouseup - false. на mouseleave смотрим равен ли наш флаг true
|
не mouseleave, а mouseup нужно, по этому событию проверяйте, находится ли курсор в координатном поле необходимого объекта
|
Viral,
На сколько я понял автору нужен именно момент покидания элемента с зажатым курсором, по вашему варианту этого события не получить. |
tsigel,
Цитата:
|
Viral,
Да, вы правы. что-то я не так прочел. |
Nupster,
а вам, раз используете jQuery, проще было бы что-то такое поюзать |
$('#elem').mouseleave(checkMouseLeave()); function checkMouseLeave() { document.onmouseup = fclear; document.addEventListener("onmouseup", fclear, false); } Вот так сделал. Вроде бы работает. Спасибо за помощь. |
|
Часовой пояс GMT +3, время: 14:37. |