Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Последовательное выполнение JQuery (https://javascript.ru/forum/misc/48708-posledovatelnoe-vypolnenie-jquery.html)

Dionid 13.07.2014 22:50

Последовательное выполнение JQuery
 
Задача:
Реализовать появление меню (анимированное), когда пользователь прокрутил ниже первого блока на странице
Вот мой код
$(window).scroll(function() {
	var myOffset = $('#s0').height();
	var scrollTop = $(window).scrollTop();
	if (scrollTop < myOffset){
		$('nav').css('opacity', 0);
		$('nav').height(0);
		$('nav').addClass('hidden'); //Класс в котором указаны значения display: none opacity: 0
	} else if (scrollTop > myOffset) {
		$('nav').removeClass('hidden');
		$('nav').css('opacity', 1);
	        $('nav').height(100);
	}
});

Вместо добавления класса использовал hide()/show(), но желательно исполнить код с классом
setTimeOut не предлагать
С .queue() ничего не получается
$.when().then() тоже не сработало
Использовал animate, но когда происходит скролл функции накапливаются и корректной работы не выходит (если вы можете помочь добавив работающий animate я был бы очень признателен)
Буду очень признателен за любой ответ, но меня в особенности интересует, как ставить выполнение множества команд в определенной последовательности


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