2013-11-22 5 views
0

Это HTMLAnimate существующего выпадающее меню по щелчку

<header> 
    <a class="show-menu">Menu</a> 
    <nav> 
    <a>anchor1</a> 
    <a>anchor2</a> 
    <a>anchor3</a> 
    </nav> 
</header> 

CSS-в настоящее время скрывает нав якоря, пока кнопка не будет нажата, то JQuery переключает атрибут класса, чтобы изменить дисплей: Нет для отображения: блок ,

Это текущая JS, которая успешно отображает список, когда нажата кнопка «Меню», но я пытаюсь ее анимировать, так что при нажатии кнопки список сдвинется в нужное положение.

$(function() { 
    $('a.show-menu').click(function() { 
    $('header nav').toggleClass('active'); 
    }); 
    }); 
+1

ли вы попробовать 'slideToggle' вместо переключив класс, используя' toggleClass'? – Abhitalks

+0

Да, toggleClass необходимо включить отображение: block. – aConnor

ответ

0
$(function() { 
    $('a.show-menu').click(function() { 
    $('header nav').slideToggle(function(){$(this).toggleClass('active')}); 
    //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^and toggle your class if you want 
    //or can you use simple slideToggle(); 
    }); 
    }); 

ссылка slideToggle()

+0

Этот файл является самым близким, однако имена списков загружаются неравномерно. Первый загружается мгновенно, а затем остальные загружаются после завершения слайда. Есть идеи? – aConnor

0

JQuery UI расширяет JQuery родной toggleClass принимать второй необязательный параметр: Длительность

toggleClass(class, [duration]) 

Documentation.

Смежные вопросы