На данный момент у меня есть изображение, и когда пользователь наводит на него указатель мыши, с помощью Jquery я помещаю прозрачный div поверх изображения. Проблема в том, что это вызывает событие mouseout. Я хочу, чтобы прозрачный div уходил, когда мышь уходит от изображения. Каков наилучший способ обнаружить это, если есть прозрачный div, покрывающий изображение. Надеюсь, это имело хоть какой-то смысл.
Обнаружение оставления скрытого элемента - Jquery
Ответы (4)
Предполагая, что div имеет тот же размер, что и изображение, вы можете скрыть div в собственном событии mouseout div.
person
Greg
schedule
13.12.2009
Спасибо, не могу поверить, что после получаса чесания головы это никогда не приходило мне в голову, это так просто. Большое спасибо
- person Lobe; 13.12.2009
вместо этого добавьте прослушиватель mouseOut в div.
person
Marius
schedule
13.12.2009
Проверьте mouseenter, а не mouseleave. Если вы оберните изображение и прозрачный div внутри содержащего div, а затем найдите mouseenter в этом div, вы получите желаемое поведение. Поведение Mouseenter всплывает через дочерние элементы и звучит именно так, как вам нужно.
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