2015-07-10 3 views
0

Пытается применить переход SlideUp в то время как .removeClass. Этот скрипт показывает/скрывает меню навигации на странице прокрутки вверх/вниз. Я хочу добавить переход, когда меню навигации скрыто. Смотрите эту fiddle>Применение перехода SlideUp на .removeClass

JS

lastScroll = 0; 
$(window).on('scroll',function() {  
    var scroll = $(window).scrollTop(); 
    if(scroll === 0){ 
     $(".nav").removeClass("darkHeader"); 
    } else if(lastScroll - scroll > 0) { 
     $(".nav").addClass("darkHeader"); 
    } else { 
     $(".nav").removeClass("darkHeader"); 
    } 
    lastScroll = scroll; 
}); 

Я пробовал:

lastScroll = 0; 
    $(window).on('scroll',function() {  
     var scroll = $(window).scrollTop(); 
     if(scroll === 0){ 
      $(".nav").removeClass("darkHeader"); 
     } else if(lastScroll - scroll > 0) { 
      $(".nav").addClass("darkHeader"); 
     } else { 
      $(".nav").removeClass("darkHeader").slideUp("1000"); //I have Added 
     } 
     lastScroll = scroll; 
    }); 

Это не работает. Вопрос: как добавить эффект slideUp во время навигации?
Я пытаюсь сделать Как This>

ответ

1

Да, Вы можете использовать slideUp() & slideDown() функции как ниже:

$(window).on('scroll',function() {  
    var scroll = $(window).scrollTop(); 
    if(scroll === 0){ 
     $(".nav").removeClass("darkHeader"); 
    } else if(lastScroll - scroll > 0) { 
     if(!$(".nav").hasClass('darkHeader')) $(".nav").hide(); 

     $(".nav").slideDown('fast',function(){ 
      $(".nav").addClass("darkHeader"); 
     }); 
    } else { 
     $(".nav.darkHeader").slideUp('slow',function(){ 
      $(".nav").removeClass("darkHeader"); 
     }); 
    } 
    lastScroll = scroll; 
}); 

Смотрите ваш пример работы с 2-мя функциями здесь: jsfiddle

+0

Ницца, но не гладко, когда отображается меню Nav. – Aariba

+1

Проверьте, пожалуйста. –

+0

Спасибо, ты лучший :) – Aariba