|
|
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
Добрый день. Нужно чтобы при наведение на ссылку, меню открылось спустя 2 секунды. Проблема в том, что нужно проверить, спустя 2 секунды до сих пор ли курсор находится на этой ссылке. И фукнция mouseenter во второй раз не срабатывает когда курсор находится уже над элементом. Вобщем даже и не знаю в какую сторону копать, жду вашей помоши. заранее спасибо. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2012, 12:35:00 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
А ты попробуй через 2 секунды не проверять - остался ли курсор, а повесить хандлер на убирание курсора - если убрали, удалить таймаут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2012, 12:48:15 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
Последние 3 строки за это и отвечают. Если пользователь навел мышь на элемент, начался отчет двух секунд и дальше идет выполнение кода. Если в течении этих двух секунд пользователь выведет мышь, то скрипт никак не отреагирует, как будто действия и небыло вовсе, и меню будет выведено. Грубо говоря, нужно как то определить, находится ли указатель на элементе. Но как??! Вот в чем вся сложность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2012, 14:10:44 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
А почему ты использовал событие mouseout, а не, скажем, dblclick или focus? Если берешь "противоположное" событие, то это будет mouseleave, а не mouseout. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2012, 15:16:44 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
Потому что при клике пользователь должен уходить на другую страницу, это сделано для планшетных устройств. А при наведении должно появится то самое меню, которое поможет миновать страницу для планшетников. Дак как же отследить где находится курсор мыши спустя 2 секунды? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 10:06:39 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
m0pДак как же отследить где находится курсор мыши спустя 2 секунды? Как вариант используя setTimeout()... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 11:27:59 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
В первом сообщении есть кусок кода, в нем используется эта функция, но я немогу повторно узнать, находится ли мышь над элементом или уже нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:16:27 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
m0pно я немогу повторно узнать, находится ли мышь над элементом или уже нет... Как вариант, запоминай данные о местоположении перед вызовом и сверяй с тем, что есть, потом внутри вызова... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:26:46 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
я не могу узнать местоположение, так как в функцию settimeout нужно передать объект, для того чтобы узнать значения координат. Объект то я вроде передаю, но результат не возвращает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:41:47 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
m0pДобрый день. Нужно чтобы при наведение на ссылку, меню открылось спустя 2 секунды. Проблема в том, что нужно проверить, спустя 2 секунды до сих пор ли курсор находится на этой ссылке. И фукнция mouseenter во второй раз не срабатывает когда курсор находится уже над элементом. Вобщем даже и не знаю в какую сторону копать, жду вашей помоши. заранее спасибо. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. чёто не понял проблемы... а так не получится? (вариант уже предлагался) : Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ну или типа того... просто сильно не вникал что для чего делается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 14:27:09 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
Програмёрпросто сильно не вникал что для чего делается... О_о... Вот теперь вникнул (немного)... закомментировал строки, которые не нужны Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 14:36:59 |
|
||
|
Открытие меню с задердкой
|
|||
|---|---|---|---|
|
#18+
При таком решении появился баг: если навести мышь на соседний пункт меню, он открывается с задержкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 15:42:49 |
|
||
|
|

start [/forum/topic.php?fid=22&fpage=161&tid=1449541]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
65ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 355ms |

| 0 / 0 |
