Обнаружение оставления скрытого элемента - Jquery

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


person Lobe    schedule 13.12.2009    source источник


Ответы (4)


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

person Greg    schedule 13.12.2009
comment
Спасибо, не могу поверить, что после получаса чесания головы это никогда не приходило мне в голову, это так просто. Большое спасибо - person Lobe; 13.12.2009

вместо этого добавьте прослушиватель mouseOut в div.

person Marius    schedule 13.12.2009

Проверьте mouseenter, а не mouseleave. Если вы оберните изображение и прозрачный div внутри содержащего div, а затем найдите mouseenter в этом div, вы получите желаемое поведение. Поведение Mouseenter всплывает через дочерние элементы и звучит именно так, как вам нужно.

Mouseenter с сайта JQuery API

person jimmsly    schedule 24.06.2011

Есть несколько плагинов для этого трюка (подписи при наведении курсора), например:

http://buildinternet.com/2009/03/sliding-boxes-and-captions-with-jquery/

http://www.chazzuka.com/blog/?p=138

person TheVillageIdiot    schedule 13.12.2009