반응형

일단 푸터로 가정하고 스타일을 준다

.ft_fixed {background: #fff; border-top: 1px solid #d3d3d3; padding: 5px 0; position: fixed; left: 0; bottom: 0; z-index: 10; width: 100%; transition: bottom 0.2s ease-in-out} 

.nav-up { bottom: 0px;}
.nav-down {bottom: -62px;}
.nav-end {bottom: 0px;}

 

스크립트

var lastScrollTop = 0; 
    var delta = 5; 
    var navbarHeight = $('.ft_fixed').outerHeight(); 
    $(window).scroll(function(event){ didScroll = true; }); setInterval(function() { if (didScroll) { hasScrolled(); didScroll = false; } }, 250); function hasScrolled() { 
        var st = $(this).scrollTop(); 
        if(Math.abs(lastScrollTop - st) <= delta) 
            return;
        
    if (st > lastScrollTop && st > navbarHeight){ 
       $('.ft_fixed').removeClass('nav-up').removeClass('nav-end').addClass('nav-down'); 
    } else { 
    if(st + $(window).height() < $(document).height()) { 
        $('.ft_fixed').removeClass('nav-down').removeClass('nav-end').addClass('nav-up'); } 
    } 
    if(st + $(window).height() == $(document).height()) {
        $('.ft_fixed').removeClass('nav-down').removeClass('nav-up').addClass('nav-end'); }
        
    
   lastScrollTop = st; 
   }

728x90
반응형

'프로그래밍 > javascript' 카테고리의 다른 글

javascript tab  (0) 2019.07.25
인스타그램 사진 가져오기  (0) 2019.07.25
엔터키로 form submit  (0) 2019.07.23
페이지 화면 상단이동 버튼  (0) 2019.07.23
페이지 넓이구하기  (0) 2019.07.23

+ Recent posts