Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Выплывающее меню на jquery. (https://javascript.ru/forum/dom-window/40184-vyplyvayushhee-menyu-na-jquery.html)

strengerst 26.07.2013 20:33

Выплывающее меню на jquery.
 
Создал выплывающее меню на jquery, все работает но проблема в том что если быстро водить мышкой на меню а потом резко убрать, то меню еще некоторое время будет сама себя открывать и закрывать. как бы пытаеться выполнить все разы наведения. Как от этого избавиться.
$(document).ready(function(){
   $("ul").hover(function(){
   $("ul.menu").slideDown("normal");},
   	function(){$("ul.menu").slideUp("normal");})})


И кто знает сылку скинте на точно такой же финт но только на чистом java script. - что бы меню плавно выподала.

Lawwin 26.07.2013 23:05

http://www.cyberforum.ru/javascript/thread140168.html

вот нашел такой вариант

mta88 27.07.2013 08:23

для начала я бы использовал ".stop(true)" -- этот вызов останавливает текущую анимацию и очищает очередь анимаций
$("ul").hover(
  function() {
    $("ul.menu").stop(true).slideDown("normal");
  },
  function() {
    $("ul.menu").stop(true).slideUp("normal");
  }
}


можете поискать еще что-нибудь в документации -- api.jquery.com/category/effects/custom-effects/

Цитата:

сылку скинте на точно такой же финт но только на чистом java script
никогда таким не занимался
хотя чего тут сложного -- добавляем пару переменных (для направления анимации и текущего размера меню), запускаем метод перерисовки через "setInterval", не забываем потом остановить этот таймер

strengerst 29.07.2013 20:23

Спасибо всем. Очень помогло.


Часовой пояс GMT +3, время: 22:44.