Использование меню пользовательского интерфейса jQuery при наведении не работает для подменю

Я использую плагин jQuery UI Menu в своем приложении. У меня есть одна проблема.

В подменю (2-й уровень) Если я несколько раз наведу указатель мыши на один элемент подменю, то когда-нибудь действие наведения не произойдет.

ITEM 1

ITEM 2

ITEM 3 -> ITEM 3-1 

          ITEM 3-2     


ITEM 4

ITEM 5 

Объяснение сценария здесь:

Я скопировал демонстрационный пример отсюда http://api.jqueryui.com/menu/#entry-examples и добавил еще один уровень подменю в пункт 3-2. Теперь наведите указатель мыши на пункт 3-2, появится следующий уровень, но если я буду наводить курсор повторно, то в определенный момент при наведении следующий уровень не появится.

Чтобы воспроизвести эту проблему, выполните следующие действия.

  1. Наведите указатель мыши на пункт 3 — появится меню.
  2. Наведите указатель мыши на пункт 3-2 — появится подменю.
  3. Уберите мышь из подменю. Но не нажимайте за пределами меню, чтобы пункт 3 меню все еще оставался открытым.
  4. Теперь наведите курсор мыши на элемент 3-2 (выберите тот же элемент, который был выбран на шаге 2, повторите действия с этим элементом меню и проверьте) — подменю не появляется.

person Gokul    schedule 09.06.2014    source источник
comment
покажите jsfiddle.net вашего примера   -  person raskalbass    schedule 09.06.2014
comment
обновленная ссылка jsfiddle здесь. Пожалуйста, проверьте пример jsfiddle.net/gokul2287/qy332   -  person Gokul    schedule 09.06.2014
comment
@rjdmello: То же самое происходит и здесь .. попробуйте воспроизвести вышеописанную проблему. наведение мыши на пункт 3-2 повторяется .. в определенный момент наведение не происходит   -  person Gokul    schedule 09.06.2014
comment
Привет. Проблема существует в меню пользовательского интерфейса jQuery, и для ее решения возникла проблема. пожалуйста, проверьте здесь. forum.jquery.com/topic/problem-in- jquery-ui-меню при наведении   -  person Gokul    schedule 19.06.2014


Ответы (1)


Событие mouseleave, связанное с корневым меню, должно запускать функции функции rollAll(event, true), а не просто быть привязанным непосредственно к функции CollarAll(), например.

@ строка 102 jquery.ui.menu.js

            mouseleave: "collapseAll",
            mouseleave: function( event ){
                this.collapseAll( event, true );
            },
person raskalbass    schedule 09.06.2014
comment
попробовал, но снова не работает та же проблема. не понял первопричины - person Gokul; 10.06.2014