Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Находится ли мышка над дивом ? (выпадающее меню) (https://javascript.ru/forum/jquery/11036-nakhoditsya-li-myshka-nad-divom-vypadayushhee-menyu.html)

advsm 03.08.2010 14:55

Находится ли мышка над дивом ? (выпадающее меню)
 
Мне нужно сделать выпадающее меню. Поведение такое: навел на пункт меню - открылось выпадющее из него. Увел курсор - выпадающее меню закрылось. Событие mouseover() помогает открывать меню. Но вот с закрытием меню проблема. Не знаю когда его делать.

Его нужно закрывать в двух случаях. Если с пункта меню уведен курсор и он находится не над открывшимся выпадающем меню. А также если с выпадающего меню уведен курсор, но опять же, если он не переведен на меню.

Тоесть нужно проверить - находится ли курсор мышки над каким-то дивом. А как эту проверку сделать я не знаю. Кто-нибудь может помочь с этим ?

Если сумбурно изьясняюсь - ссылка на сайт: http://keramiki.ru/
Спасибо всем за помощь.

Gvozd 03.08.2010 15:01

Вы просите готовый скрипт с нуля.

Это работа, и за нее обычно платят деньги.
Для таких сообщений предназначен раздел форума "Работа".

Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела.

advsm 03.08.2010 15:03

Я не прошу говорый сприт с нуля. о_О
Я прошу чтобы мне подсказали как определить, находится ли мышка над определенным блоком в данный момент.

advsm 03.08.2010 15:06

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

Gvozd 03.08.2010 15:11

помимо события mouseover есть еще и событие mouseout

обычно делают так:
при mouseover, если меню еще не показано, то показать его, и сбросить таймер(о нем речь дальше)
при mouseout сделать
var timer = setTimeout(function(){/* здесь скрываем меню */}, 500);

соответсвенно, если пользователь неаккруатно повел мышкой, переходя в подменю, или же из-за неаккуратной верстки между подменю, и меню есть зазор(и такое бывает), то меню не пропадет сразу же

advsm 03.08.2010 15:14

Точно. Читал про сбросы таймера, но не додумался, что так можно сделать в моем случае. Спасибо за помощь!

rgwergwegwerg 16.09.2014 08:35

что ж такое .полгода пасся на этом форуме....

больно осознавать, что большая половина участников не знает что такое рекурсия мало того не может назвать древовидное меню древовидным меню
http://javascript.ru/forum/jquery/11...selektory.html

кидай почту пришлю сайт в архиве.

tsigel 16.09.2014 08:38

rgwergwegwerg,
Чел 4 года ждал твоего ответа :)

rgwergwegwerg 16.09.2014 09:36

что делать. действительно надо различать програмистов и "веб грамистов", последним наверно практически невозможно объяснить как работает тод же квик-сорт.

tsigel 16.09.2014 09:55

rgwergwegwerg,
Ты странный тип :)
Ты пришел на сайт на котором помогают людям что-то сделать, на котором люди учатся и задают вопросы по ходу обучения и удивляешься что они ничего не знают. Я думаю что если ты спросишь что такое рекурсия у любого с кармой >= 100, то тебе скажут без проблем :)


Часовой пояс GMT +3, время: 11:31.