JQuery всплывающие и выпадающие меню - PullRequest
0 голосов
/ 12 марта 2011

У меня проблемы с выпадающим меню моего сайта с использованием JQuery.

По сути, я хочу добиться простого горизонтального выпадающего меню с наведением курсора JQuery (в модуле меню DHTML в Drupal). Однако есть некоторые неприятности, которые я не мог исправить.

Итак, главное меню и их дочерние элементы <li> являются ссылками. Когда я щелкаю одно из дочерних меню, все в порядке (меня направили к месту назначения, меню сбрасывается в обычное состояние без поиска). Но когда я щелкаю по родительскому меню, после прибытия в пункт назначения, даже несмотря на то, что выпадающее меню сбрасывается назад, мышь все еще висит над ссылкой. Это приводит к тому, что выпадающий список снова кратковременно активируется, когда я убираю мышь.

Я хочу, чтобы раскрывающийся список активировался только тогда, когда мышь входит в элемент, а не когда он выходит. Я попытался разделить .hover() на .mouseenter() и .mouseleave(), но вместо этого это приводит к тому, что выпадающий список вообще не работает. Помогите!

Мой код указан ниже:

 $(li).hover(function(e) {
   Drupal.dhtmlMenu.expandMenu($(li));
 },
 function(e) {
   Drupal.dhtmlMenu.collapseMenu($(li));
 });

 $(li).ready(function(e) {
   Drupal.dhtmlMenu.collapseMenu($(li));
 });

Ответы [ 2 ]

1 голос
/ 13 марта 2011

Используйте модуль Nice Menus .Это избавит вас от этой головной боли.Я использую его с тех пор, как начал работать с Drupal 3 года назад.

1 голос
/ 12 марта 2011

Абсолютно не нужно использовать JavaScript для простого выпадающего меню. См. http://webdesignerwall.com/tutorials/css3-dropdown-menu (CSS3 используется, но базовый CSS будет работать во всех браузерах). Сделайте это чисто в CSS / HTML

...