Как мне скрыть соседний div при наведении курсора мыши на пункт меню, используя jQuery?

#jquery

#jquery

Вопрос:

Мне было интересно, как я мог бы отменить щелчок, вызванный в этой функции при наведении курсора мыши на «a.menu-arrow»? Смотрите код ниже:

 $(".menu-arrow").hover(function() {
  $.data(this, "timer", setTimeout($.proxy(function() {
    $(this).click();
  }, this), 500));
}, function() {
  clearTimeout($.data(this, "timer"));
});
  

Что происходит после 0,5 секунды наведения курсора мыши на стрелку.menu … запускается щелчок, показывающий соседний div, содержащий подменю. К сожалению, HTML структурирован именно так.

Любая помощь была бы высоко оценена.

Извините, я новичок в JavaScript и jQuery

Ответ №1:

В вашем коде $(this).click() бесполезно использовать функцию обработчика событий без функции, чтобы вызвать событие, фактически вам нужно использовать .trigger() для элемента, я полагаю, у вас была соответствующая функция обработчика событий, написанная ранее.

Ссылка : .trigger(), .data()

Комментарии:

1. Извините, что я реализовал .trigger('click'); , но он скрывал соседний div подменю при наведении курсора мыши на.menu-arrow

2. Извините, нет … к сожалению, это система меню системы интрасети, над которой я работаю

3. @Avinash — как я могу написать аналогичную функцию. Допустим, при наведении курсора мыши на.no-submenu … если я зависал над этим в течение 1 секунды … тогда для следующего соседнего DIV устанавливается значение .hide();

4. @nasir, на вашей странице firebug отображается $(".menu-arrow") как NULL. это означает, что элемент с именем класса menu-arrow отсутствует на вашей странице. пожалуйста, найдите время, чтобы обновить вашу страницу и еще кое-что, просто опубликуйте требуемый модуль вашего вопроса, сложно выполнить поиск по всей странице. Поняли мою точку зрения?