хотите увеличить время задержки для эффекта наведения - PullRequest
0 голосов
/ 10 мая 2010

У меня есть три уровня уль ли.

<ul>
  <li>
  <li>
     <ul>
        <li>
        <li>
           <ul>
             <li>  

Я хочу увеличить время наведения, т. Е. Когда я нахожусь над вторым уровнем, то время задержки на наведение должно быть увеличено, пока я не достигну его дочерних элементов, то есть третьего уровня

Ответы [ 2 ]

0 голосов
/ 10 мая 2010

Когда вы используете jquery, убедитесь, что вы используете mouseenter и mouseleave вместо mouseover и mouseout в этих случаях. mouseover и mouseout срабатывают даже при вводе дочернего элемента . Если у вас есть код для сокрытия вещей, вы не хотите, чтобы он запускался в меню в этот момент, вы хотите, чтобы он запускался, когда вы полностью выходите из <li> и считаете, что ребенок все еще внутри ... 1018 * и mouseleave do:)

Существует также ярлык для этого, называемый .hover(), который использует такие события mouseenter и mouseleave, как это:

$(selector).hover(mouseenterFunc, mouseleaveFunc);

Вот пример:

$("li").hover(function() {
  $(this).children("ul").slideDown();
}, function() {
  $(this).children().slideUp();
});

Вы можете увидеть приведенный выше код в быстрой демонстрации против вашего размещенного дерева здесь

0 голосов
/ 10 мая 2010

Если у вас есть код javascripe с использованием mouseover() / mouseout() или hover(): Получите плагин hoverIntent и используйте element.hoverIntent(overfunc, outfunc)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...